我有Web服務和Web服務調用由Thread處理,以便它們可以異步運行並超時。但是線程是「可運行的」而不是「可調用的」,所以線程無法傳回Web服務響應。使線程返回java中的值
我已閱讀聲明,我們需要使用callable.Is他們的任何方式來返回從我的可運行線程的響應。我發佈一個小例子,我們可以讓它返回值。
public class HelloThread extends Thread {
public void run() {
System.out.println("Hello from a thread!");
String a="Hello";
}
public static void main(String args[]) {
(new HelloThread()).start();
}
}
由於線程是異步運行的,所以沒有機會從一個線程返回值到另一個線程。因此,如果他們在一次課程中,您可以考慮採用一個全局變量,但這對於線程並行運行時的某些情況也無效。 –
您應該查看[Future](http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Future.html)界面 – MadProgrammer