|
1
2
LTrace跟踪共享库函数调用。这可以给你一个更高层次的观点。但由于许多库函数(例如strcmp)不会导致系统调用,因此它的输出也比strace多。 但是futex是用来锁定的,所以如果你在futex被卡住了,你可能会陷入死锁。或者你只是在看一个等待其他线程的线程。ltrace/strace-f跟随clone/fork跟踪所有线程/所有子进程。
在GDB中,有时
|
|
|
2
1
你有Java程序的源代码吗?如果是这样,你可以 remotely debug 它使用Eclipse或其他IDE。如果您没有源代码,您的选项就更为有限,但是您可以尝试通过 JConsole 了解正在发生的事情。Java剖析工具是另一种选择,但更难设置。 |
|
|
3
1
也许JSuvalvm,来自Sun的Java,有你需要的东西。您可以在程序运行时记录虚拟机的状态,还可以告诉它将任何堆栈转储保存到以后可以打开并查看的文件中。在JDK的bin目录中查找jvisualvm。 在这里您可以看到更多文档: http://java.sun.com/javase/6/docs/technotes/tools/share/jvisualvm.html 祝你好运! |
|
|
4
0
使用gdb附加到进程。gdb并不完全是直观的,但是在网络上有很多howto和类似的东西。 http://dirac.org/linux/gdb/06-Debugging_A_Running_Process.php |
|
|
5
0
见 this solution 我找到了。 在这种情况下,挂起是由/dev/random缓慢生成随机字节引起的。 Java应用程序等待很长时间才能获得随机字节。 这不是真正的解决方案,而是一个解决方案,因为/dev/random将与/dev/urandom相同。 |
|
|
MaPo · Linux,设置锁定ICMP_过滤器选项 1 年前 |
|
|
user2138149 · 双栈网络服务器无法按预期处理ipv4请求 1 年前 |
|
|
Marco · PyCharm Linux系统文件上os.stat异常 1 年前 |