java多线程
aitumingmumu
不断学习。。。
展开
-
CountDownLatch 和 CyclicBarrier
如果是一个线程等待一个线程,则可以通过await()和notify()来实现;如果是一个线程等待多个线程,则就可以使用CountDownLatch和CyclicBarrier来实现比较好的控制。 CountDownLatch: A synchronization aid that allows one or more threads to wait until a set of operatio原创 2017-03-19 16:25:38 · 253 阅读 · 0 评论 -
Java死锁范例与死锁分析
死锁范例 下面是一个简单的死锁范例: package com.wlyuan.DeadLock; /** * Created by wlyuan on 17-4-4. */ public class ThreadDeadLock { public static void main(String[] args) { Object lock1 = new Object(原创 2017-04-04 22:57:20 · 943 阅读 · 0 评论 -
哲学家就餐问题
死锁 某个任务在等待另一个任务,而后者又在等待别的任务,这样一直下去,直到这个链上的任务又在等待第一个任务释放锁,这样就得到一个任务之间互相等待的连续循环, 没有哪个任务可以继续,这种情况就称为死锁。 死锁发生的条件 死锁必须同时满足一下四个条件才能发生: 1. 互斥条件。 2. 至少有一个任务必须持有一个资源且正在等待获取一个当前被别到任务持有到资源 3. 资源不能被任务抢占,任原创 2017-04-15 22:40:13 · 504 阅读 · 0 评论