我有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