设计模式:工作者对象模式与虫洞模式解析
1. 工作者对象模式
工作者对象模式是一种用于处理复杂操作执行的有效方式,下面我们详细了解其相关内容。
1.1 模式方案
工作者对象模式的基本方案如下代码所示:
Runnable worker = new Runnable() {
public void run() {
... invoke the work method
}
}
... use the worker object:
- send the worker object to a queue for execution,
- or pass it to another subsystem for execution,
- or simply call run() directly
需要注意的是,虽然这里使用 Runnable 接口进行说明,但任何包含执行操作方法的接口都可以同样适用。
根据不同情况,可以使用命名类或匿名类。无论哪种方式,都需要实现一个包含 run() 方法的接口(如 Runnable )来调用工作方法。如果使用命名类,必须添加一个构造函数来接受与工作方法匹配的参数;如果使用匿名类,则不需要(也不能)编写构造函数,而是在本地创建类,并将外部上下文的变量作为工作方法的参数传递。同时,传递的每个局部变量都需要标记为 final ,因为局部类不能访问非 <
超级会员免费看
订阅专栏 解锁全文
38

被折叠的 条评论
为什么被折叠?



