我正在开发一个Java ME应用程序来从服务器下载内容。第一次应用程序从本地和第一个显示加载一些内容包含多个页面,我们可以使用右/左导航移动页面。当新页面出现时,下载将启动并更新当前屏幕中的新内容。当我从第一页慢慢移动到第二页时,下载将开始并解析xml
并在屏幕中显示内容。当我从1快速移动到2到3页时,从1到2开始一个thread
下载同时用户从2移动到3我们将停止先前运行thread
并开始一个新线程当前的屏幕。
问题是:
1.如何在Java ME中停止正在运行的线程?现在我在run方法中使用了一个while循环并给出boolean值false,当boolean值变为true
时,线程将运行。还有其他方法可以在运行时停止thread
吗?
答案 0 :(得分:1)
使用布尔变量是最佳解决方案。您也可以在Thread类中使用所有相关的常规方法,但使用这些方法会使您的应用程序不稳定。其中一些(如暂停)会在某些设备上引发一些奇怪且无法生存的异常! 我有一个不相关的建议,如果可能的话,不要在j2me应用程序中使用XML。由于移动处理器较弱,用常规文本代替XML,以便更快,更容易地处理。