Java多线程之间通信

 

Java中线程间通信

1.      线程间通信(通讯): 多个线程在处理同一个资源,但任务不同。

一、等待/唤醒机制

1.  涉及的方法:

(1) wait(); 使线程处于冻结状态,被wait的线程会存储到线程池(等待集)中;

(2) notify(); 唤醒线程池中的一个线程,这个线程是任意的;

(3) notifyAll(); 唤醒线程池中的所有线程。

2.  这些方法都必须定义在同步中,因为这些方法是用于操作线程状态的方法;而且必须要明确到底操作的是哪个锁上的线程。即必须明确线程由那个监视器监视。

3.  监视器: 就是所说的锁。

4. 为什么操作线程的方法wait()、notify()、notifyAll()定义在了Object类中?

答:因为这些方法就是监视器的方法,监视器就是锁,锁可以是任意的对象,如Object obj = new Object();既然可以是任意对象,那么这些方法需要定义在最高的类中,即定义在Object类中。

5、管道通信

6、内存共享

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值