How to handle network thread calls and wait progress in J2me?

落花浮王杯 提交于 2019-12-11 01:57:04

问题


In my project I have created some network calls to the servlets in separate Thread where before that thread starts I show a spinner as wait progress. Until that network Thread finishes the waitprogress is displayed on to the screen and when I receive response from the server I have to explicitly call progress bar's dispose() method to dispose that progress bar. So, This is bit complicated whenever I make calls establishing GPRS connection while network strength goes down there I found sometimes it takes about 2-3 minutes to throw an IO Exception or receive response from server where I dispose waitprogress, show error message and proceed. I dont add any cancel command to waitprogress as network calls are made using separate thread so disposing waitprogress will allow user to make another call where the user is needed to wait until he gets response.

The above scenario is complicated because the user will not be waiting for this long to get response. There must be some way that whenever I call network Thread and show progress bar the user should be able to cancel all the operations including network thread, go back to previous state and make another call if there is no or poor connectivity.

Here, I am using Lwuit.


回答1:


In NetworkManager class you can add this function and actived at from your class

only if lwuit is at open code in your application , you can add this function:

 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();
            }
        }

after or before this you need call dispose() method.



来源:https://stackoverflow.com/questions/13966033/how-to-handle-network-thread-calls-and-wait-progress-in-j2me

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!