java多线程总结三:sleep()、join()、interrupt()示例
来源:互联网 发布:编个写歌的软件下载 编辑:程序博客网 时间:2024/06/06 14:20
这是一个来自《java编程思想上的示例》
package demo.thread;/** *sleep()是静态方法,是属于类的,作用是让当前线程阻塞 *join()是使线程同步,如在某个线程里调用t.join()表示t线程执行完再执行当前线程 *interrupt()给线程设定一个标志表示该线程已被中断,但在异常捕获时将清理这个标志 *所以在catch子句中,该标志为false */public class SleepJoinDemo {public static void main(String[] args) {Sleeper sleep1 = new Sleeper("sleep1", 1500);Sleeper sleep2 = new Sleeper("sleep2", 1500);Joiner join1 = new Joiner("join1", sleep1);Joiner join2 = new Joiner("join2", sleep1);sleep2.interrupt();}}class Sleeper extends Thread {// 可以传参设定睡眠时间private int sleepTime;public Sleeper(String name, int sleepTime) {super(name);this.sleepTime = sleepTime;start();// 在构造方法中启动}@Overridepublic void run() {try {sleep(sleepTime);} catch (InterruptedException e) {System.out.println(getName() + " was interrupted.\n"+ "isInterrupted():" + isInterrupted());return;}System.out.println(getName() + " has awakened");}}class Joiner extends Thread {private Sleeper sleeper;public Joiner(String name, Sleeper sleeper) {super(name);this.sleeper = sleeper;start();}public void run() {try {sleeper.join();//合并,异步变同步} catch (InterruptedException e) {System.out.println("interrupted");}System.out.println(getName() + " join completed");}}
- java多线程总结三:sleep()、join()、interrupt()示例
- java多线程总结三:sleep()、join()、interrupt()示例
- java多线程总结三:sleep()、join()、interrupt()示例
- Java多线程sleep(),join(),interrupt(),wait(),notify()
- Java多线程sleep(),join(),interrupt(),wait(),notify()
- Java多线程sleep(),join(),interrupt(),wait(),notify()
- Java多线程sleep(),join(),wait(),interrupt()
- Java多线程sleep(),join(),interrupt(),wait(),notify()
- Java多线程sleep(),join(),interrupt(),wait(),notify()
- Java多线程sleep(),join(),interrupt(),wait(),notify()
- JAVA多线程编程(三)——线程的生命周期(sleep,join,interrupt)
- Java中的多线程:sleep, wait, join 与 interrupt()的关系
- 多线程之join,interrupt(三)
- [Java线程]sleep,join,interrupt解析
- Java多线程之interrupt()方法与sleep(),join(),wait()的关系
- Java多线程-wait(), notify(), notifyAll()、yield()、sleep()、join()、interrupt()原理及使用
- java 多线程(1) join() / interrupt() 打断sleep() / stop() / run() / 线程停止的方法
- java 多线程(2) 线程的调度和优先级 / sleep() / interrupt() 打断join() / yield() / setPriority()
- SQL 中文转换拼音首字母
- windows下apache虚拟主机的配置
- 下拉垂直导航菜单功能实现
- 同事的QCON会议记录分享
- 解决PowerDesigner 16 Generate Datebase For Sql2005 找不到sysproperties表的问题
- java多线程总结三:sleep()、join()、interrupt()示例
- iPhone开发过程中检测多次Release问题
- 递归实例
- Extract
- 表单验证功能实现
- 新建arcgis api for android 项目失败
- zigbee协议与开发-ZStack协议栈结构的初步解析
- Android 使用JSON进行网络数据交换
- Bada学习-(六)应用生命周期管理