JDK5.0 新機能:java.util.concurrentパッケージ2、Callableインタフェース
「12.2. Callableインタフェース」
まんま
import java.util.Date; import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutorService; import java.util.concurrent.Future; import java.util.concurrent.Executors; public class C2008093000 implements Callable<Date> { public Date call() throws Exception { Thread.sleep(1000); return new Date(); } public static void main(String[] args){ ExecutorService ex = Executors.newSingleThreadExecutor(); Future<Date> future = ex.submit(new C2008093000()); try { Date date = future.get(); System.out.println(date); } catch (InterruptedException e) { e.printStackTrace(); } catch (ExecutionException e) { e.printStackTrace(); } ex.shutdown(); } }
で、
Tue Sep 30 18:30:32 JST 2008