【问题标题】:Get the stack trace of all the threads running in a process获取进程中运行的所有线程的堆栈跟踪
【发布时间】:2016-10-18 01:14:53
【问题描述】:

我想知道如何通过由同一进程创建的线程来跟踪一个进程中运行的所有线程的堆栈。

一种方法是,从一个线程向所有其他线程调用信号,并在信号处理程序中调用 backtrace()。但这会中断线程。取而代之的是,有没有办法获取线程的堆栈跟踪?

【问题讨论】:

    标签: linux stack-trace


    【解决方案1】:

    JetBrains dotTrace 产品允许您查看正在运行的不同线程。您可以深入了解不同的方法,反汇编程序将向您显示方法的代码以及它们运行所需的时间。它还显示了有优化潜力的热点。

    https://www.jetbrains.com/profiler/

    【讨论】:

    • dotTrace 是 .NET 特定的 - 鉴于问题中对 backtrace() 的引用,这似乎是针对本机应用程序(可能是用 C/C++ 编写的)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-18
    • 1970-01-01
    • 2012-08-24
    • 1970-01-01
    • 2010-09-18
    • 2010-09-22
    相关资源
    最近更新 更多