活锁的好例子?给出了活锁的一个很好的例子,它在编写花哨的代码以避免死锁情况时发生。线程获取锁A,然后尝试获取锁B。如果锁B不空闲,它会释放锁A,然后在随机时间后,获取锁A并再次尝试获取锁B。
我的问题是,我有一个正在运行的代码很多线程。如何检测是否存在活锁情况,以及哪些线程是活锁?
有人说没有工具支持。在哪种情况下,我们注定要永远和活锁一起生活?我想至少应该可以通过读取线程转储手动检测?是否有可能检测到是否存在活锁,它发生在哪里?是否可以使用工具、vm arg 或某种调试来查找我的应用程序是否正在经历活锁?
问问题
197 次