--- old/test/jdk/java/nio/channels/Selector/RegisterDuringSelect.java 2018-07-27 14:50:26.000000000 +0800 +++ new/test/jdk/java/nio/channels/Selector/RegisterDuringSelect.java 2018-07-27 14:50:26.000000000 +0800 @@ -25,6 +25,9 @@ * @bug 8201315 * @summary Test that channels can be registered, interest ops can changed, * and keys cancelled while a selection operation is in progress. + * @library /test/lib + * @build jdk.test.lib.Utils + * @run main RegisterDuringSelect */ import java.io.IOException; @@ -38,6 +41,8 @@ import java.util.concurrent.Future; import java.util.concurrent.Phaser; +import jdk.test.lib.Utils; + public class RegisterDuringSelect { static Callable selectLoop(Selector sel, Phaser barrier) { @@ -84,11 +89,13 @@ SelectionKey key = sc.register(sel, SelectionKey.OP_READ); if (!sel.keys().contains(key)) throw new RuntimeException("key not in key set"); + Thread.sleep(Utils.adjustTimeout(50)); sel.wakeup(); barrier.arriveAndAwaitAdvance(); System.out.println("interestOps ..."); key.interestOps(0); + Thread.sleep(Utils.adjustTimeout(50)); sel.wakeup(); barrier.arriveAndAwaitAdvance();