160161162163164165166167168169170
Object token = s.register(); try { for (int i = 0; sync != null; i++) s.await(i); } finally { s.unregister(token); } } if (t != null) throw new RuntimeExecutionException(t); return value;
198199200201202203204205206207208
left = deadline - System.nanoTime(); if (left <= 0) throw new TimeoutException(); } } finally { s.unregister(token); } } if (t != null) throw new RuntimeExecutionException(t); return value;