9404803 发表于 2017-7-2 14:58:06

Java并发编程核心方法与框架

public>private Exchanger<String> exchanger;  public ThreadA(Exchanger<String> exchanger) {
  super();
  this.exchanger = exchanger;
  }
  @Override
  public void run() {
  try {
  System.out.println(&quot;A线程获得的值:&quot; + exchanger.exchange(&quot;String from threadA&quot;));
  System.out.println(&quot;threadA end&quot;);
  } catch (Exception e) {
  e.printStackTrace();
  }
  }
  }

  public>  private Exchanger<String> exchanger;
  public ThreadB(Exchanger<String> exchanger) {
  super();
  this.exchanger = exchanger;
  }
  @Override
  public void run() {
  try {
  System.out.println(&quot;B线程获得的值:&quot; + exchanger.exchange(&quot;String from threadB&quot;));
  System.out.println(&quot;threadB end&quot;);
  } catch (Exception e) {
  e.printStackTrace();
  }
  }
  }

  public>  public static void main(String[] args) {
  Exchanger<String> exchanger = new Exchanger<>();
  ThreadA a = new ThreadA(exchanger);
  a.setName(&quot;A&quot;);
  ThreadB b = new ThreadB(exchanger);
  b.setName(&quot;B&quot;);
  a.start();
  b.start();
  System.out.println(&quot;main end&quot;);
  }
  }
页: [1]
查看完整版本: Java并发编程核心方法与框架