摘要: △wait()和sleep()的区别: 1.wait():没有等待时间,而sleep()需要有等待时间作为参数。 2.在同步中对于CPU的执行权和锁的处理不同: wait()会释放执行权和锁.醒来后需要重新竞争锁. sleep():释放执行权和,不会释放锁 void show(){ Synchron 阅读全文
posted @ 2016-06-30 22:40 hlhdidi 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 利用ArrayBlockingQueue可以方便的实现生产者和消费者,所有消费者线程共用资源ArrayBlockingQueue对象,从而实现线程安全.生产者线程搜索当前目录及子目录,并且将相应的File对象添加到队列中,消费者线程对每个File对象进行关键字的查询,如果查到头,即停止查询. 阅读全文
posted @ 2016-06-30 21:34 hlhdidi 阅读(600) 评论(0) 推荐(0) 编辑
摘要: 多生产者多消费者是Java中的一个经典的案例,采用等待唤醒机制来实现,代码如下: 还有一种采用BlockQueue实现的多生产者多消费者模式: 阅读全文
posted @ 2016-06-30 12:39 hlhdidi 阅读(339) 评论(0) 推荐(0) 编辑