接触过死锁,但很少有印象,从网上找到了方法,进行简单总结
学习的连接,点击打开链接
1,这是死锁的方式,
得到的结果
Addition Thread: 13
Subtraction Thread: 7
Holding First Lock…
Holding Second Lock…
Addition Thread: Waiting for AddLock…
Subtraction Thread: Waiting for SubLock…
会发现每人挨着执行一句话,敢接很奇怪2,解决的方法是更换加锁的方法
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…
这样的话,就会出现执行完这个线程后,才开始下一个线程的执行,符合我们的需求了。