死锁概念:
某一个同步块,同时拥有两个以上对象的锁时,就有可能发生死锁现象
代码演示
结果
解决方法:
将另一个的synchronized代码块,移出去
形成死锁的四个条件
1.互斥条件:一个资源一次只能被一个线程使用
2.请求与保持条件:一个线程因请求资源而造成阻塞时,并不释放资源
3.不剥夺条件:进程已经获得的资源,在未使用完前,不可剥夺
4.循环等待条件:若干进程之间形成头尾相连的循环等待资源
某一个同步块,同时拥有两个以上对象的锁时,就有可能发生死锁现象
结果
解决方法:
将另一个的synchronized代码块,移出去
1.互斥条件:一个资源一次只能被一个线程使用
2.请求与保持条件:一个线程因请求资源而造成阻塞时,并不释放资源
3.不剥夺条件:进程已经获得的资源,在未使用完前,不可剥夺
4.循环等待条件:若干进程之间形成头尾相连的循环等待资源