我刚刚通过使用全局函数进行了一些分析,在我的例子中称为GetCallingMethod
。
大多数情况下效果很好。但有些情况下应用程序被阻止。当关闭应用程序时,它会被阻止。当在Visual Studio中“暂停”时,它将永远停留在new StackTrace
行。
在我的应用程序中,我使用第三方引用,多线程和几个类。但是所有这些都不应成为问题,并且不应该像我想象的那样锁定跟踪器类。 我在这种情况下使用Visual Studio 2010 Ultimate。
知道在哪里寻找任何解决方案吗?
这条线永远不会留在开发区。申请将被冻结。 Try / Catch不会强制执行该程序。
答案 0 :(得分:1)
这是我使用的,从未给我带来问题(调试或制作)。
Dim strMethodName As String = ""
Dim stkTrace As New StackTrace(True)
strMethodName = stkTrace.GetFrame(1).GetMethod().Name
注意:你可以在GetFrame()中放入任何整数,只要它小于stkTrace.FrameCount即可。 0是当前帧,1是前一帧,2是前一帧,等等......