1.Guarded Suspension,用在一个线程等待另一个线程的执行结果。
2.一个结果从一个线程传递到另一个线程,让他们关联同一个GuardedObject 保护对象。
3.如果有结果不断从一个线程到另一个线程,那么可以使用消息队列。
4.join方法和Future的实现,采用的就是此模式。
5.因为要等待另一方的结果,因此归类到同步模式。
public class GuardedObjectDemo {
public static void main(String[] args) {
GuardedObject guardedObject = new GuardedObject();
new Thread(() -> {
System.out.println("等待结果");
Object o = guardedObject.get();
System.out.println("response="+o);
}, "t1").sta