. ExecutorService... :
ExecutorService service = Executors.newCachedThreadPool();
Callable<Result> task = new Callable<Result>() {
public Result call() throws Exception {
}
};
Future<Result> future = service.submit(task);
Result resultFromBackgroundThread = future.get();
Java 5, ExecutorService, Callable, Future .. java.util.concurrent
.