在我的項目中,我創建了一些網絡調用到單獨的線程中的servlet,在線程啓動之前,我將一個微調器顯示爲等待進度。在網絡線程完成之前,waitprogress顯示在屏幕上,當我收到來自服務器的響應時,我必須顯式調用進度條的dispose()方法來處理該進度條。所以,每當我建立GPRS連接的呼叫而網絡強度下降時,這有點複雜,我發現有時需要大約2-3分鐘來拋出一個IO異常或接收來自服務器的響應,我處理waitprogress,顯示錯誤消息並繼續。我不添加任何取消命令waitprogress作爲網絡調用使用單獨的線程,所以處置waitprogress將允許用戶進行另一個調用,需要用戶需要等待,直到他得到響應。如何處理網絡線程調用並在J2me中等待進度?
上面的場景很複雜,因爲用戶不會等這麼久才能得到迴應。每當我調用網絡線程並顯示進度條時,都必須有某種方式,用戶應該能夠取消包括網絡線程在內的所有操作,如果沒有連接或連接不暢,則返回到以前的狀態並撥打另一個電話。
在這裏,我正在使用Lwuit。之後或在此之前
public void killAll() {
for (int i = 0; i < pending.size(); i++) {
((ConnectionRequest) pending.elementAt(i)).kill();
}
pending.removeAllElements();
for (int i = 0; i < networkThreads.length; i++) {
networkThreads[i].currentRequest.kill();
}
}
:
你能發表一些代碼嗎? – Raptor