利用公共变量进行进程间通信。
String response ="";
String getResponse(){
int count=0;
while("".equals(response) && count<20){
try {
Thread.sleep(1000);
Log.i("Sophia", "waiting 1000 ms");
} catch (InterruptedException e) {
e.printStackTrace();
}
count++;
}
Log.i("Sophia", "END of looping with response="+response+", and count="+count+"");
return response;
}
public void setResponse(String response) {
this.response = response;
}
发起一个线程:
new Thread(){
@Override
public void run(){
try {
......
setResponse("TravelListDone");
} catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
}
}}.start();
在另一个线程等待,得到后,清空:
getResponse();
setResponse("");
<画外音>
书到用时方恨少啊。以前读操作系统的时候,就这么迷迷糊糊过去了。