返回結果線程—等待單個線程(搬遷至此)

Callable接口與future類相結合可以實現future模式,Future模式在請求發生時,會產生一個Future對象給請求方,Future對象作用類似於代理,所代理的真實任務在另一個線程中繼續進行,真實任務完成之後把結果放在future對象中。
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;

public class TestFuture {
public static void main(String[] args) throws InterruptedException, ExecutionException{
final ExecutorService exec=Executors.newFixedThreadPool(3);
Callable<String> call=new Callable<String>(){
public String call(){
try {
Thread.sleep(1000*2);

} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

return "Thread is finished";

}
};
Future<String> task=exec.submit(call);
System.out.println("waite son Thread finished");
String obj=task.get();
System.out.println("return finished:"+obj);
exec.shutdown();
}

}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章