.NET Framework Bookmark and Share   
 index > Building Development and Diagnostic Tools for .Net > ngen and Enter leave tail hooks
 

ngen and Enter leave tail hooks

If a dll is ngen'ed, will the FunctionMapper method not work?

That is, if I return the second parameter of FunctionMapper i.e. *pbHookFunction as false, will the enter, leave and tail hooks still be called?

This seems to be what happens in my profiler. And the only change in the environment is that a dll is in ngen and I have to run ngen with /profile for this.

Is there some way I can prevent the ELT hooks from being called for these methods?

Thanks
raxraja
Cleaned up the .NET framework installation according to http://blogs.msdn.com/astebner/archive/2007/03/26/how-to-repair-the-net-framework-2-0-and-3-0-on-windows-vista.aspx

and things work fine now.

The methods I mark with *pbHookFunction as false are not entered into in the ELT hooks now.

All Replies

  • Tuesday, April 21, 2009 11:44 PMraxraja Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer
    Cleaned up the .NET framework installation according to http://blogs.msdn.com/astebner/archive/2007/03/26/how-to-repair-the-net-framework-2-0-and-3-0-on-windows-vista.aspx

    and things work fine now.

    The methods I mark with *pbHookFunction as false are not entered into in the ELT hooks now.
  • Monday, June 22, 2009 9:38 PMholger heinrich Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     

    @raxraja
    I experience the same problem as you did. Whenever I am using the native(profiling) images, I am receiving ELT-Callbacks eventhough i set *pbHookFunctionto false andevenreturned a null pointer.

    Whenever I remove the profiling images, everything seems to be as expected. No callbacks for filtered calls.

    I am curious, how and why did the .Net framework installation clean up help you ?
    Do you still use the profiling images or did you remove them ? Did you check the list of loaded modules if the corresponding module is still a ni-image ?

    Is there something I can do to prevent the ELT callbacks when using the option ngen /profile ?

    @all:
    Reducing JIT-times is not worth it if runtime overhead is added for each call, in particular calls with high frequency.
    Is theobserved effect by design ? Anythingwe can do here ?

    Thanks,
    Holger

raxraja

You can use google to search for other answers

Custom Search

More Threads

• how to check the ICorDebugFunction's parameter type
• ICorProfiler(2) and CoCreate error
• Identify Finalizer Thread
• Trouble with VectoredExceptionHandler and ICorDebugProcess->Stop method
• Debugging mscorwks
• Creating a subdomain
• Which Is Best: Interface or Deep Class Hierarchy?
• Why is document ref on sequence points?
• Check the assembly files in dos command
• coredebug.dll ?