疯狂JAVA讲义---第十六章:多线程(下)

本文深入讲解了Java多线程中的高级话题,包括ReentrantLock的使用、线程间的同步与通信机制、线程组的应用及异常处理,并演示了如何利用线程池提高并发效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

看过我昨天的博客,大家肯定对多线程有所了解,今天要讲多线程中比较高层次的东西。首先讲下JDK1.5新出来的线程同步机制---同步锁(Lock),其实和synhronized方法用法差不多,只是更灵活。同步锁有多种,其中一般为了线程安全都用ReentrantLock(可重入锁),eg

下面讲下线程的协调

void   notify():      唤醒一个正在等待该对象的线程。   
void   notifyAll():   唤醒所有正在等待该对象的线程。eg

当使用同步锁时不能使用wait(),notify(),notifyAll(),而要使用Condition实例来操作,eg

线程通信,eg(使用管道通信)

但一般不用以上方法来通信而是利用共享数据来通信,这样更方便,而网络中线程之间的通信就用的比较多了,这我会过两天的blog中讲。

利用线程组来分组处理未处理的异常,eg

处理未处理的异常,eg

最后讲个线程池的例子,JDK1.5本身提供了线程池,所以很方便,eg

以后我将讲我以前做过的断点续传工具,就是利用了线程池,今天就到这里

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值