Machine-translated by Google. Questions are authored in English.
Top

Discussion

Which of these correctly declares an exchanger between two threads?

  • A.Exchanger<String> ex = new Exchanger<String>();
  • B.Exchanger<String> ex = new Exchanger<String>(2);
  • C.Exchanger ex = Exchanger.between(a, b);
  • D.Exchanger<String> ex = Executors.newExchanger();

Answer: A

Correct answer: Exchanger<String> ex = new Exchanger<String>();

An Exchanger pairs exactly two threads by construction, so the constructor takes no count. Each thread calls exchange() with the object it is offering and receives the other’s in return, blocking until its partner arrives.

No comment is present. Be the first to comment.
Loading…

Post your comment

Please log in or register to post a comment.