日期:2014-05-20  浏览次数:20664 次

请问为什么等待Loading操作只能显示一次?
我用了这个例子
http://blog.csdn.net/simayilong/article/details/5758844

final ExecutorLoading exe = new ExecutorLoading();
exe.execute(new Runnable(){
public void run()
{
exe.showMsg("正在操作中,请稍候...");
String vStr=sendHttpPost("http://127.0.0.1:8080/test.jsp"); 
if(!"".equals(vStr))
{
exe.showErrorMsg("数据验证失败");
return;
}
}
});

为什么只有第一次回弹出"正在操作中,请稍候...",
第二次...第N次 都是直接弹出"数据验证失败",没有"正在操作中,请稍候..."

如果用Thread.sleep(5000);的话,稍后出现,感觉延迟啊 ,怎么解决呢?

------解决方案--------------------
用阻塞队列。
------解决方案--------------------
有个简单的方法:
在线程刚进入处理的时候将线程锁住。
String vStr=sendHttpPost("http://127.0.0.1:8080/test.jsp");
这句话换成一个监听消息。你可以用一个监听器来监听数据验证成功的消息,如果成功就讲线程打开。
如果在N秒内还没验证成功,则打开线程,数据验证失败。