, future.get().
unit test, .
№ 1 ( future.get()):
@Test
public void testSchedule() throws InterruptedException, ExecutionException {
ScheduledExecutorService executorService = Executors.newSingleThreadScheduledExecutor();
System.out.println(new Date());
ScheduledFuture<?> future = executorService.schedule(new Runnable() {
public void run() {
System.out.println(Thread.currentThread().getId() + " - " + Thread.currentThread().getName() + " - Executing thread...");
}
}, 5, TimeUnit.SECONDS);
executorService.shutdown();
System.out.println(new Date());
}
:
Thu May 24 10:11:14 BRT 2012
Thu May 24 10:11:14 BRT 2012
№ 2 ( future.get()):
@Test
public void testSchedule() throws InterruptedException, ExecutionException {
ScheduledExecutorService executorService = Executors.newSingleThreadScheduledExecutor();
System.out.println(new Date());
ScheduledFuture<?> future = executorService.schedule(new Runnable() {
public void run() {
System.out.println(Thread.currentThread().getId() + " - " + Thread.currentThread().getName() + " - Executing thread...");
}
}, 5, TimeUnit.SECONDS);
System.out.println("future : " + future.get());
executorService.shutdown();
System.out.println(new Date());
}
:
Thu May 24 10:12:48 BRT 2012
8 - pool-1-thread-1 - Executing thread...
future : null
Thu May 24 10:12:53 BRT 2012
, !