Skip to content
Java Design Patterns
Main Navigation
设计模式
编程原则
代码片段
Appearance
Return to top
On this page
目的
半同步/半异步模式将同步I/O与系统中的异步I/O分离,从而简化并发编程工作且不会降低执行效率。
类图
适用性
使用半同步/半异步模式当
一个系统具有以下特点:
系统必须执行任务以响应异步发生的外部事件,例如操作系统中的硬件中断
为每个外部事件源指定单独的控制线程来执行同步 I/O 效率低下
如果 I/O 同步执行,系统中更高级别的任务可以显着简化。
系统中的一个或多个任务必须在单个控制线程中运行,而其他任务可能会受益于多线程。
真实世界例子
BSD Unix networking subsystem
Real Time CORBA
Android AsyncTask framework
鸣谢
Douglas C. Schmidt and Charles D. Cranor - Half Sync/Half Async
Pattern Oriented Software Architecture Volume 2: Patterns for Concurrent and Networked Objects