Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我知道如何分析 CPU/内存。但是现在我需要分析一些使用 IO 操作(PlainSocketImpl.doConnect和其他操作)的代码,以了解哪段代码占用了大部分时间。
PlainSocketImpl.doConnect
在基于 linux 的系统上,您可以尝试iotop。切换视图以显示线程,然后将其与jstack输出相结合以匹配实际的代码行。
jstack
虽然不是很自动。
JProfiler具有文件和套接字探针,可以向您显示实际对象周围的 I/O 数据。
在 CPU 视图中,有一个线程选择器具有“Net I/O”状态。如果您选择该状态,您将只会看到花费在 I/O 上的时间。
免责声明:我公司开发 JProfiler。