奇怪的异常callstack调用方法

时间:2016-01-22 12:48:38

标签: c# .net stack-trace jit dump

我在崩溃转储中有以下callstak。这是我第一次看到这样的东西而且我没有明白这意味着什么:

           ntdll.dll!_RtlCallVectoredExceptionHandlers@8()  + 0xa bytes  
           ntdll.dll!_RtlDispatchException@8()  + 0x19 bytes          
           ntdll.dll!_KiUserExceptionDispatcher@8()  + 0xf bytes 
           ntdll.dll!_RtlUnwind@16()  + 0x352e8 bytes      
           MSVCR110_CLR0400.dll!_UnwindNestedFrames()  + 0x2a bytes             
           MSVCR110_CLR0400.dll!___DestructExceptionObject()  - 0x534 bytes
           MSVCR110_CLR0400.dll!___DestructExceptionObject()  + 0x69046 bytes           
           MSVCR110_CLR0400.dll!___DestructExceptionObject()  - 0x25ee bytes  
           MSVCR110_CLR0400.dll!___InternalCxxFrameHandler()  + 0x1d8 bytes              
           MSVCR110_CLR0400.dll!___CxxFrameHandler3()  + 0x26 bytes               
           ntdll.dll!ExecuteHandler2@20()  + 0x26 bytes   
           ntdll.dll!ExecuteHandler@20()  + 0x24 bytes     
           ntdll.dll!_RtlDispatchException@8()  + 0xd3 bytes          
           ntdll.dll!_KiUserExceptionDispatcher@8()  + 0xf bytes 
           clrjit.dll!Compiler::genCodeForTreeSmpOpAsg()  + 0x9 bytes   

           ….
           ….
           ….

            clrjit.dll!Compiler::genCodeForTree()  + 0xb4ca bytes   
           clrjit.dll!Compiler::genComputeReg()  + 0x3e bytes       
           clrjit.dll!Compiler::genCodeForTreeSmpOpAsg()  + 0xb8 bytes                
           clrjit.dll!Compiler::genCodeForTreeSmpOp()  + 0x5b bytes        
           clrjit.dll!Compiler::genCodeForTree()  + 0xbd bytes       
           clrjit.dll!Compiler::genPushArgList()  + 0xd6ab bytes     
           clrjit.dll!Compiler::genCodeForCall()  + 0x89bb bytes    
           clrjit.dll!Compiler::genCodeForTreeSpecialOp()  + 0x50 bytes   
           clrjit.dll!Compiler::genCodeForTree()  + 0xb4ca bytes   
           clrjit.dll!Compiler::genComputeReg()  + 0x3e bytes       
           clrjit.dll!Compiler::genCodeForTreeSmpOpAsg()  + 0xb8 bytes                
           clrjit.dll!Compiler::genCodeForTreeSmpOp()  + 0x5b bytes        
           clrjit.dll!Compiler::genCodeForTree()  + 0xbd bytes       
           clrjit.dll!Compiler::genPushArgList()  + 0xd6ab bytes     
           clrjit.dll!Compiler::genCodeForCall()  + 0x89bb bytes    
           clrjit.dll!Compiler::genCodeForTreeSpecialOp()  + 0x50 bytes   
           clrjit.dll!Compiler::genCodeForTree()  + 0xb4ca bytes   
           clrjit.dll!Compiler::genComputeReg()  + 0x3e bytes       
           clrjit.dll!Compiler::genCodeForTreeSmpOpAsg()  + 0xb8 bytes                
           clrjit.dll!Compiler::genCodeForTreeSmpOp()  + 0x5b bytes        
           clrjit.dll!Compiler::genCodeForTree()  + 0xbd bytes       
           clrjit.dll!Compiler::genPushArgList()  + 0xd6ab bytes     
           clrjit.dll!Compiler::genCodeForCall()  + 0x89bb bytes    
           clrjit.dll!Compiler::genCodeForTreeSpecialOp()  + 0x50 bytes   
           clrjit.dll!Compiler::genCodeForTree()  + 0xb4ca bytes   
           clrjit.dll!Compiler::genComputeReg()  + 0x3e bytes       
           clrjit.dll!Compiler::genCodeForTreeSmpOpAsg()  + 0xb8 bytes                
           clrjit.dll!Compiler::genCodeForTreeSmpOp()  + 0x5b bytes        
           clrjit.dll!Compiler::genCodeForTree()  + 0xbd bytes       
           clrjit.dll!Compiler::genPushArgList()  + 0xd6ab bytes     
           clrjit.dll!Compiler::genCodeForCall()  + 0x89bb bytes    
           clrjit.dll!Compiler::genCodeForTreeSpecialOp()  + 0x50 bytes   
           clrjit.dll!Compiler::genCodeForTree()  + 0xb4ca bytes   
           clrjit.dll!Compiler::genCodeForTreeSmpOpAsg()  - 0xf7 bytes  
           clrjit.dll!Compiler::genCodeForTreeSmpOp()  + 0x5b bytes        
           clrjit.dll!Compiler::genCodeForTree()  + 0xbd bytes       
           clrjit.dll!Compiler::genPushArgList()  + 0xd6ab bytes     
           clrjit.dll!Compiler::genCodeForCall()  + 0x89bb bytes    
           clrjit.dll!Compiler::genCodeForTreeSpecialOp()  + 0x50 bytes   
           clrjit.dll!Compiler::genCodeForTree()  + 0xb4ca bytes   
           clrjit.dll!Compiler::genEvalSideEffects()  + 0x5a bytes   
           clrjit.dll!Compiler::genCodeForTreeSmpOp()  + 0x14d89 bytes 
           clrjit.dll!Compiler::genCodeForTree()  + 0xbd bytes       
           clrjit.dll!Compiler::genCodeForBBlist()  - 0x1be3 bytes 
           clrjit.dll!Compiler::genGenerateCode()  + 0x73 bytes    
           clrjit.dll!Compiler::compCompile()  + 0x68e6 bytes         
           clrjit.dll!Compiler::compCompileHelper()  + 0x1f0 bytes              
           clrjit.dll!Compiler::compCompile()  + 0x104 bytes           
           clrjit.dll!jitNativeCode()  - 0x11eb bytes               
           clrjit.dll!CILJit::compileMethod()  + 0x25 bytes 
           [Managed to Native Transition]               
           **A call to one of our managed methods()**            

任何人都知道这意味着什么?它可能是clrjit中的一个错误吗?

编辑:

抱歉抛出的异常如下:     STATUS_GUARD_PAGE_VIOLATION(0x80000001)异常

enter image description here

关于应用程序,它是一个在.Net 4中运行的托管Word插件。该异常的rasinig方法没有做任何你期望的异常结束的事情。它只是调用一个UnityContainer.RegisterType(),但看起来在到达方法之前引发了异常。

0 个答案:

没有答案