未检测到 ThreadSanitizer 死锁并且最后没有结果(由于死锁程序)
ThreadSanitizer deadlock not detected and no result at the end (du to the deadlocked program)
我想知道线程清理器 (clang) 的死锁在哪里,但问题是程序被阻塞,并且在使用 -fsanitize=thread 选项进行编译期间未检测到死锁。并且在执行结束时没有结果,因为程序被阻塞(由于死锁无法退出程序)。
如果程序已经被阻止,您不需要 ThreadSanitizer 来调试它。您可以使用 gdb 附加到死锁进程,并使用 thread apply all bt
查看所有线程堆栈跟踪。您应该会在 thread apply all bt
输出中看到从不同线程锁定相同互斥体的尝试。
我想知道线程清理器 (clang) 的死锁在哪里,但问题是程序被阻塞,并且在使用 -fsanitize=thread 选项进行编译期间未检测到死锁。并且在执行结束时没有结果,因为程序被阻塞(由于死锁无法退出程序)。
如果程序已经被阻止,您不需要 ThreadSanitizer 来调试它。您可以使用 gdb 附加到死锁进程,并使用 thread apply all bt
查看所有线程堆栈跟踪。您应该会在 thread apply all bt
输出中看到从不同线程锁定相同互斥体的尝试。