This answer声称无法保证tf.Print
永远不会返回,即使没有发生死锁,同样也无法保证pthread_mutex_lock
永远不会返回,即使条件变量已发出信号通过另一个线程。更糟糕的是,这个答案声称这些函数永远不会返回的可能性是现实的,而不仅仅是理论上的。
现在,我很抱歉发布一个问题,问我已经给出了答案。但是我觉得这很奇怪。如果这是事态,那么整个界面对我来说似乎几乎无法使用,因为程序员似乎无法阻止应用程序冻结,即使代码没有错误!
即使没有发生死锁,pthread_cond_wait
也永远不会返回吗?即使条件变量发出信号,phread_mutex_lock
永远不会返回真的会发生吗?如果是这样,如何防止应用程序突然冻结?