Java多线程产生死锁的4个必要条件?如何避免死锁?

通常形成死锁必须同时知足如下4个条件: 1. 互斥条件:线程使用的资源必须至少有一个是不能共享的。即在一段时间内,一个资源只能被一个进程占用,直到被该进程释放。 2. 请求与保持条件:指的是进程至少有一个资源,但又提出了新的资源请求,而该资源已被其它线程占有,此时请求进程阻塞,但又对本身得到的其它资源保持不释放。 3. 不可抢占条件:指的是进程已得到资源,在未使用完以前,不能被抢占,只能在使用完时
相关文章
相关标签/搜索