准确阐述如何避免死锁?

发布于 2022-04-12  16 次阅读


多个线程对多个锁的加锁顺序一样,这样就不会发生死锁,比如线程1线程A资源加锁,再对B资源加锁,线程2也使用相同的顺序,就不会产生死锁。

使用待定超时机制,如果等待一个锁太久没得到,就释放自己拥有的所有锁,避免死锁。这个方法感觉指标不治本,是处理死锁发生后的情况而不是有效的预防死锁。

还有一种是死锁检测机制。这个比较虚,太深奥咱们也搞不懂,