【问题标题】:Print thread stack of all threads of a process打印一个进程的所有线程的线程堆栈
【发布时间】:2011-09-26 13:29:05
【问题描述】:

我有一个带有按钮的 .NET 应用程序。当我单击按钮时,我希望应用程序打印所有线程的线程堆栈以调试控制台。

有可能吗?

达特。

【问题讨论】:

    标签: .net threadpool callstack


    【解决方案1】:

    这可能对发现此问题的人有用http://stackdump.codeplex.com/

    【讨论】:

      【解决方案2】:

      您可以使用 StackTrace 类 (System.Diagnostics) 来获取 Thread 的堆栈跟踪。不过,您需要枚举线程,然后(不幸地)先挂起它们。

      这是感兴趣的构造函数:http://msdn.microsoft.com/en-us/library/t2k35tat.aspx

      您可能需要创建自己的ThreadPool 实现,或扩展其他人的实现。据我所知/告诉没有办法枚举它们。

      【讨论】:

      • 有一个关于不使用该构造函数的大警告,因为它很可能导致死锁..
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-09-22
      • 1970-01-01
      • 1970-01-01
      • 2015-11-11
      • 2012-03-30
      • 2018-03-12
      • 2011-10-11
      相关资源
      最近更新 更多