all groups > dotnet clr > september 2003 >
You're in the

dotnet clr

group:

SetFunctionReJIT causing deadlock in the CLR



RE: SetFunctionReJIT causing deadlock in the CLR zifengh NO[at]SPAM online.microsoft.com
9/23/2003 12:23:59 AM
dotnet clr: Hi Patrick,

I don't have an answer for this.
But below article might be helpful for you.
http://msdn.microsoft.com/msdnmag/issues/03/09/NETProfilingAPI/default.aspx

Thanks
Jason

--------------------
| From: "Patrick Grawehr" <pgrawehr@student.ethz.ch>
| Subject: SetFunctionReJIT causing deadlock in the CLR
| Date: Tue, 23 Sep 2003 00:29:04 +0200
| Lines: 22
| X-Priority: 3
| X-MSMail-Priority: Normal
| X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
| Message-ID: <O2vk7kVgDHA.1760@TK2MSFTNGP09.phx.gbl>
| Newsgroups: microsoft.public.dotnet.framework.clr
| NNTP-Posting-Host: 229.183.186.195.dial.bluewin.ch 195.186.183.229
| Path: cpmsftngxa06.phx.gbl!TK2MSFTNGP08.phx.gbl!TK2MSFTNGP09.phx.gbl
| Xref: cpmsftngxa06.phx.gbl microsoft.public.dotnet.framework.clr:8044
| X-Tomcat-NG: microsoft.public.dotnet.framework.clr
|
| I can't figure out how to use ICorProfilerInfo::SetFunctionReJIT().
| Every time I call it on a functionId other than the one which has been
| passed to the current callback function (ie JITCompilationFinished()), the
| CLR deadlocks on the next invocation of the method whose function id I've
| passed.
|
| Here's what I wana do:
|
| I use JITCompilationStarted() to replace the body of some method (which
| works correctly).
| Later on, I wan't to be able to make another change to the same method,
| which requires the function
| to be re-jited.
| So I need to call SetFunctionReJIT() on the method when I want to change
it
| again (preferably from a different thread), but that doesn't work.
|
| Any help would be greatly appreciated, since my university-diploma might
| depend on it....
|
| Patrick
|
|
|
SetFunctionReJIT causing deadlock in the CLR Patrick Grawehr
9/23/2003 12:29:04 AM
I can't figure out how to use ICorProfilerInfo::SetFunctionReJIT().
Every time I call it on a functionId other than the one which has been
passed to the current callback function (ie JITCompilationFinished()), the
CLR deadlocks on the next invocation of the method whose function id I've
passed.

Here's what I wana do:

I use JITCompilationStarted() to replace the body of some method (which
works correctly).
Later on, I wan't to be able to make another change to the same method,
which requires the function
to be re-jited.
So I need to call SetFunctionReJIT() on the method when I want to change it
again (preferably from a different thread), but that doesn't work.

Any help would be greatly appreciated, since my university-diploma might
depend on it....

Patrick

AddThis Social Bookmark Button