接触过死锁,但很少有印象,从网上找到了方法,进行简单总结

学习的连接,点击打开链接

1,这是死锁的方式,

java 中死锁的介绍

java 中死锁的介绍

得到的结果

Addition Thread: 13

Subtraction Thread: 7

Holding First Lock…

Holding Second Lock…

Addition Thread: Waiting for AddLock…

Subtraction Thread: Waiting for SubLock…

会发现每人挨着执行一句话,敢接很奇怪

2,解决的方法是更换加锁的方法

java 中死锁的介绍

Addition Thread: 13

Holding First Lock…

Addition Thread: Waiting for AddLock…

Threads: Holding Add and Sub Locks…

Subtraction Thread: 7

Holding Second Lock…

Subtraction Thread: Waiting for SubLock…

Threads: Holding Add and Sub Locks…

这样的话,就会出现执行完这个线程后,才开始下一个线程的执行,符合我们的需求了。


相关文章: