What does “external code” in the call stack mean?

前端 未结 6 1643
梦毁少年i
梦毁少年i 2021-02-02 08:13

I call a method in Visual Studio and attempt to debug it by going over the call stack.

Some of the rows in it are marked \"External code\".

What exactly does thi

6条回答
  •  滥情空心
    2021-02-02 08:15

    The notation 'External Code' refers to everything that does not belong to 'My Code'.

    That's the way it is described in the MSDN documentation here How to: Use the Call Stack Window

    In managed code, by default. the Call Stack window hides information for non-user code. > The following notation appears instead of the hidden information.

    <[External Code]>

    Non-user code is any code that is not "My Code."`

    Your Code is as you might have thought everything you did write on your own. So with this definition everything that belongs to external dll's is omitted in the trace of the call stack.

    Furthermore according to How to: Step Into Just My Code you have the possibility to deny the debugger to try to trace non-user code.

    Here you will find the explanation for what user code actually is:

    To distinguish user code from non-user code, Just My Code looks at three things: DBG Files, PDB files, and optimization.

提交回复
热议问题