什么是死锁?
1,当线程a拥有自己的独占锁a,并尝试去拥有线程b的独占锁b的同时,
当线程b拥有自己的独占锁b,并尝试拥有线程a的独占锁时。
这时,就会形成ab双方都拥有对方需要的锁,而发生的阻塞现象
我们称为死锁。
如何防止死锁?
1,尽量使用trylock,设置超时时间,超时可以退出防止死锁
2,尽量使用Java. util. concurrent 代替自己手写锁
3,尽量降低锁的使用力度,尽量不要几个功能使用同一把锁
4,尽量减少同步的代码块
什么是死锁?
1,当线程a拥有自己的独占锁a,并尝试去拥有线程b的独占锁b的同时,
当线程b拥有自己的独占锁b,并尝试拥有线程a的独占锁时。
这时,就会形成ab双方都拥有对方需要的锁,而发生的阻塞现象
我们称为死锁。
如何防止死锁?
1,尽量使用trylock,设置超时时间,超时可以退出防止死锁
2,尽量使用Java. util. concurrent 代替自己手写锁
3,尽量降低锁的使用力度,尽量不要几个功能使用同一把锁
4,尽量减少同步的代码块