线程分析
点击应用实例组件中的线程分析进入线程分析界面。
线程分析界面
刷新列表
启动分析成功之后稍等几秒钟,点击刷新列表,显示该应用线程分析历史列表。
启动线程分析
点击启动线程分析,弹出对话框,选择单次线程分析或者多次线程分析
单次线程分析:
执行一次线程分析。执行成功后刷新列表,即可看到执行结果。
多次线程分析:
默认在持续30秒内执行多次线程分析,每次间隔10秒。持续时间和间隔时间可调整。首次执行会提示分析结果,后续的分析在后台自动执行。
开始对线程进行分析,出现如下对话框。
说明分析成功。
线程分析历史列表
列表显示了历次线程分析的时间、当次分析的线程数、操作用户。勾选一条列表记录,然后点击查看分析记过查看该次线程分析的结果。勾选多条记录,然后点击查看分析记过查看多次线程快照按时序分析的结果。
查看分析结果
单次快照分析结果
列表显示了从此次快照中分析出的各线程的相关信息,按线程cpu消耗从高到低排序,展示的线程信息包含线程号、CPU消耗、内存占用率(与top命令显示一致),线程状态与线程栈信息。
- 显示该次线程捕获的时间、CPU的总使用率、总线程数以及每种线程状态的单独计数。
- 自动检测线程中是否出现死锁的结果。如果出现死锁,此处显示为红色按钮“有死锁”,点击可查看死锁的线程信息。
- 点击显示按钮,可以查看该线程的线程栈详细信息。
- 点击查找按钮,可以查找该线程是否依赖其他线程。如果无依赖,弹框提示无依赖;如果有依赖,则进入详细页展示线程依赖列表。
多次快照分析结果
列表显示了多次线程快照中每个线程在不同时间的状态,表头是每次快照捕获时间,按时间序排列。不同线程状态显示不同的颜色。颜色见图例
- 勾选需要查看的线程,点击查看线程依赖图按钮,可以看到线程时序依赖图,图例:
- 点击表头时间,可以看到该次捕获的全部线程状态图谱,图例:
线程图图例
- 线程状态: RUNNABLE显示绿色、BLOCKED显示红色、WAITING和TIMED_WAITING显示蓝色
- 锁箭头: 锁被线程持有显示为由锁指向线程、线程依赖的锁显示为由线程指向锁