在需要的时候,获取线程结果。
调用者将获取结果的任务委托给一个中间类,调用者和任务线程同时持有该类实例。
调用者需要获取结果时,调用中间类的方法,如果此时结果还未到达,可以在中间类实例上等待,也可以直接返回。
在任务线程执行完毕时,服务提供者将结果写给中间类实例,同时通知在该类实例上等待的线程可以获取结果。
同步设置、获取结果。获取结果时,如果未到达则等待(也可以返回一个信号,让调用者自己处理等待。)
发送请求,获取结果时,如果中间类不提供等待,需要自己处理是否继续等待或者失败。
接收请求,创建中间类实例,将该中间类实例交给执行线程并返回。
本文出自 “JAVA技术栈笔记” 博客,请务必保留此出处http://stroll.blog.51cto.com/11038467/1859219
原文地址:http://stroll.blog.51cto.com/11038467/1859219