2017年9月27日

摘要: 演示一个阻塞队列的使用 部分运行结果如下, 线程Thread-1 准备放数据了 线程Thread-0 准备放数据了 线程Thread-1 已经放完数据了,目前队列有1个数据 线程Thread-0 已经放完数据了,目前队列有2个数据 线程Thread-2 准备取数据了 线程Thread-2 已经取完数 阅读全文
posted @ 2017-09-27 14:06 little飞 阅读(948) 评论(0) 推荐(0) 编辑
 
摘要: 先来讲解一下Semaphore信号灯的作用: 可以维护当前访问自身的线程个数,并提供了同步机制, 使用semaphore可以控制同时访问资源的线程个数 例如,实现一个文件允许的并发访问数。 请看下面的演示代码: 执行结果如下: 线程 pool-1-thread-2 进入 ,当前已有 2 个并发 线程 阅读全文
posted @ 2017-09-27 10:50 little飞 阅读(276) 评论(0) 推荐(0) 编辑
 
摘要: 本文直接附上源代码,如下是自己写的一个例子 面试题需求: 使用Condition来实现 三个线程 线程1 线程2 线程3 三个交替输出 【按照 线程1(main)-->线程2-->线程3】如此往复50次 请写出程序 输出结果可以自己尝试输出,指定到一个输出文件中,便于查看。 阅读全文
posted @ 2017-09-27 10:18 little飞 阅读(964) 评论(0) 推荐(0) 编辑
 
摘要: (1)synchronized 是互斥锁; (2)ReentrantLock 顾名思义 :可重入锁 (3)ReadWriteLock :读写锁 读写锁特点: a)多个读者可以同时进行读b)写者必须互斥(只允许一个写者写,也不能读者写者同时进行)c)写者优先于读者(一旦有写者,则后续读者必须等待,唤醒 阅读全文
posted @ 2017-09-27 10:13 little飞 阅读(4492) 评论(2) 推荐(0) 编辑