
多线程设计模式
weixin_40657079
这个作者很懒,什么都没留下…
展开
-
Single Threaded Execution
定义Single Threaded Execution模式定义:同一时间能够执行的线程只有一个。引例一次只允许一个人通过的门类说明 名字 说明 Main 创建门,让3个人不断通过 Gate 门,通过时记录姓名和出生地。如果姓名和出生地不一致,拒绝通过 UserThread 人,人们不断通过门 public class Main { p...翻译 2019-02-28 17:34:23 · 161 阅读 · 0 评论 -
immutable模式--想破坏也破坏不了
定义:immutable模式存在着确保实例状态不发生改变的类。在访问这些事例时不需要执行互斥的处理。引例:这是一个使用了immutable模式的小例子。类的一览表 名字 说明 person 人的类 main 测试行为类 printpersonthread 显示person示例的线程类 /* * * 1.final class Perso...翻译 2019-02-28 18:03:10 · 237 阅读 · 0 评论 -
two-phase termination模式-- 先收拾房间再睡觉
定义:分两段终止。她是一种先执行完终止处理再终止线程的模式。引例:类的一览表 名字 说明 countupthread 表示技术的线程的类 main 测试行为的类 public class CountupThread extends Thread { // 计数器的值 private long counter = 0; //...翻译 2019-03-10 14:15:01 · 155 阅读 · 0 评论 -
thread-specific stroage模式 一个线程一个储物柜
定义:thread-specific stroage模式 是一种即使只有一个入口,也会在内部为每个线程分配特定的空间的模式引例:不用thread-specific stroage模式 的实例public class Log { private static PrintWriter writer = null; // 初始化writer字段 stati...转载 2019-03-02 14:27:04 · 132 阅读 · 0 评论 -
Future模式 --先给你提货带
定义:获取Future角色的线程会在稍后使用Future角色来获得运行的结果。引例:类的一览表 名字 说明 main 向host发出请求并获取数据 data 表示访问数据方法的接口。 host 向请求返回futuredata实例的类 futuredata 表示提货带类 realdata 表示真实数据 public clas...翻译 2019-03-10 14:08:23 · 167 阅读 · 0 评论 -
Worker Thread模式--工作没来就一直等,工作来了就干活
定义:Worker Thread模式也叫背景模式或者线程池模式,工作线程逐个取回并处理,在所有工作完全完成后,线程等待新的工作到来。引例:类的一览表 名字 说明 main 测试行为类 clientthread 表示发出工作的类 request 表示工作请求的类 channel 接受工作并将工作请求交给工人线程 workerthread...翻译 2019-03-10 13:59:13 · 424 阅读 · 0 评论 -
Thread-Per-Message模式 这项工作交给你
定义:在Thread-Per-Message模式中,消息的委托者和执行者是不同线程的,消息的委托者把消息的交给执行者去执行。引例类的一览表 名字 说明 mian 向host发送 字符显示请求的类 host 针对请求创建的类 helper 提供字符显示功能的被动类 public class Main { public static vo...翻译 2019-03-10 13:47:28 · 155 阅读 · 0 评论 -
Read-Write Lock模式 --大家一起读可以,读的时候不要写
定义:线程执行读取操作时,实例的状态不会发生改变,所以多个线程可以同时读取。线程执行写取操作时,实例的状态可能会发生改变,所以多个线程不可以同时写入。引例类的一览表 名字 说明 main 测试行为的类 data 可以读写的类 writerthread 写入线程 readthread 读取线程 readwritelock 提供读写...翻译 2019-03-10 13:32:43 · 341 阅读 · 0 评论 -
Producer-Consumer--生产者消费者
定义:Producer-Consumer--生产者消费者模式:生产者将数据交给消费者。引例:类的一览表 名字 说明 main 测试行为类 makethread 厨师类 eaterthread 客人类 table 桌子类 /* * * ProducerConsumer中的角色 * 1.producer * ...翻译 2019-03-02 14:12:39 · 455 阅读 · 0 评论 -
Balking模式--不需要就算了
定义:Balking模式也有守护条件,如果守护条件不成立,立即中断处理。引例名字 说明 Data SaverThread ChangeThread Main public class Data { private String filename; //修改是的名字 private String ...翻译 2019-02-28 18:41:15 · 252 阅读 · 0 评论 -
Guarded Suspension模式 --等我准备好
定义:Suspension模式通过线程等待来保证实例的安全性。引例类的一览表 名字 说明 Request 请求类 RequestQueue 依次存放求情的类 ClientThread 发送请求类 ServerThread 接受请求类 Main 测试行为类 public class Request { private fi...翻译 2019-02-28 18:22:27 · 167 阅读 · 0 评论