10 |
|
import java.util.List; |
11 |
|
import java.util.concurrent.Executors; |
12 |
|
import java.util.concurrent.ExecutorService; |
13 |
– |
import java.util.concurrent.AbstractExecutorService; |
13 |
|
import java.util.concurrent.CountDownLatch; |
14 |
|
import java.util.concurrent.Callable; |
15 |
|
import java.util.concurrent.Future; |
16 |
|
import java.util.concurrent.ExecutionException; |
18 |
– |
import java.util.concurrent.CancellationException; |
17 |
|
import java.util.concurrent.RejectedExecutionException; |
18 |
|
import java.util.concurrent.ForkJoinPool; |
19 |
|
import java.util.concurrent.ForkJoinTask; |
20 |
|
import java.util.concurrent.ForkJoinWorkerThread; |
21 |
|
import java.util.concurrent.RecursiveTask; |
24 |
– |
import java.util.concurrent.TimeUnit; |
22 |
|
import java.util.concurrent.atomic.AtomicBoolean; |
23 |
|
import java.util.concurrent.locks.ReentrantLock; |
24 |
|
import static java.util.concurrent.TimeUnit.MILLISECONDS; |
25 |
|
import static java.util.concurrent.TimeUnit.NANOSECONDS; |
29 |
– |
import java.security.AccessControlException; |
30 |
– |
import java.security.Policy; |
26 |
|
import java.security.PrivilegedAction; |
27 |
|
import java.security.PrivilegedExceptionAction; |
28 |
|
|
414 |
|
ExecutorService e = new ForkJoinPool(1); |
415 |
|
try { |
416 |
|
final AtomicBoolean done = new AtomicBoolean(false); |
417 |
< |
CheckedRunnable task = new CheckedRunnable() { |
417 |
> |
Future<?> future = e.submit(new CheckedRunnable() { |
418 |
|
public void realRun() { |
419 |
|
done.set(true); |
420 |
< |
}}; |
426 |
< |
Future<?> future = e.submit(task); |
420 |
> |
}}); |
421 |
|
assertNull(future.get()); |
422 |
|
assertNull(future.get(0, MILLISECONDS)); |
423 |
|
assertTrue(done.get()); |