|
|
1
2
锁是由
|
|
|
2
1
您不需要那么多线程,您的edt(event dispatch thread a.k.a main thread)应该将作业(某些可运行类)插入队列,并使用wait/notify通知负责网络事务的专用工作线程来检查队列。 工作线程将负责打开连接、写入连接和读取连接。 有关等待/通知机制的信息,请签出: A simple scenario using wait() and notify() in java 由于无法使用工作线程更新ui,因此一旦网络事务完成,就可以使用invokelater更新ui层。 您可以在httpconnection本身中设置超时,但如果不希望依赖于该机制,则可以计划在一段时间后执行的timertask,并在未收到响应时处理超时。 一旦收到响应,您只需取消timertask,这样就不会触发超时。 退房 http://www.blackberry.com/developers/docs/4.0api/java/util/TimerTask.html |