第十章 Two-Phase Termination
来源:互联网 发布:中国水果消费数据统计 编辑:程序博客网 时间:2024/05/23 00:04
背景介绍:我们将线程进行平常的处理的状态称为作业中。当希望结束这个线程是,则送出终止请求。
接着这个线程,并不会马上结束,而会开始进行必要的刷新工作,这个状态为终止处理中。从作业中
改变成终止处理中是第一阶段。终止处理中时,不会进行平常操作。尽管线程还在进行,但进行的是
终止处理。直到终止处理结束后,才真正结束线程。终止处理中的操作结束,是第二阶段。
1.安全的结束(安全性)
2.一定会进行终止处理(生命性)
3.收到终止请求后,要尽快开始终止处理(响应性)
public class CountupThread extends Thread { private long counter = 0; private volatile boolean shutdownRequested = false;//保证内存同步 public void shutdownRequest() { shutdownRequested = true; interrupt();//保证生命性 } public boolean isShutdownRequested() { return shutdownRequested; } public final void run() { try { while (!isInterrupted()) { doWork(); } } catch (InterruptedException e) { } finally { doShutdown(); } } private void doWork() throws InterruptedException { counter++; System.out.println("doWork: counter = " + counter); //Thread.sleep(500); //此时不能检测到是否中断 try { Thread.sleep(500); } catch (InterruptedException e) { } } private void doShutdown() { System.out.println("doShutdown: counter = " + counter); }}
0 0
- 第十章 Two-Phase Termination
- Two-phase Termination 模式
- Two-Phase Termination
- Two-phase Termination 把玩具收拾好再去睡觉。
- 两阶段终止模式(Two-phase Termination)
- Java多线程编程之Two-phase Termination模式
- Java 多线程设计模式之Two-phase Termination
- [置顶] Java多线程编程模式实战指南(三):Two-phase Termination模式
- Java多线程编程模式实战指南(三):Two-phase Termination模式
- 多线程设计模式——Two-phase Termination(两阶段终止)模式
- 设计模式之-两阶段终止模式(Two-Phase Termination Patter)模式
- two phase commit
- postgresql Two-phase commit
- Two-phase Construction
- two-phase commit
- Two-phase commit
- Perform Two Phase Commits
- C++ 模板 two-phase name lookup
- 【深度学习】论文导读:无监督域适应(Deep Transfer Network: Unsupervised Domain Adaptation)
- 《重构》-3-代码的坏味道-读书笔记
- 时间
- 最小操作数
- Leetcode 461. Hamming Distance 汉明距离 解题报告
- 第十章 Two-Phase Termination
- Android第十七课;有返回结果的页面跳转
- AJAX--实例分析
- [Unity XLua]热更新XLua入门(一)-基础篇
- HTML5常见面试题及答案(一)
- 【MongoDb探究】07-游标操作
- Java的ResourceBundle读取properties文件
- 最少操作次数的简易版
- 作为前端你不得不知-浏览器的工作原理:网络浏览器幕后揭秘