主线程和子线程的关系

pork 2006-10-25 09:22:24
一个MIDlet主线程中调用一个线程的执行(如联网操作),此时如果该线程并未执行完成,而结束了主线程运行,这个被调用的线程还会继续执行么?如果会,且该线程是一个由状态值来决定该线程是否执行完成,这个状态值始终未满足结束条件,那么该线程将在何时被回收?
...全文
280 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
gzpoplar 2006-10-25
  • 打赏
  • 举报
回复
如果主线程不运行System.exit(0)的话,
子线程没结束,主线程就不会结束。
Rayuu 2006-10-25
  • 打赏
  • 举报
回复
楼上说的没错。一旦Midlet结束,会认为推出程序,该程序的所有进程都护被结束。
yanhan0615 2006-10-25
  • 打赏
  • 举报
回复
MIDlet一结束,那么整个程序占用的资源都会释放,所以不会继续运行
jackxing 2006-10-25
  • 打赏
  • 举报
回复
关注!
pork 2006-10-25
  • 打赏
  • 举报
回复
那就是啦,刚才给你上述的说法给搞糊涂了,ok,明白了!
gzpoplar 2006-10-25
  • 打赏
  • 举报
回复
写几段代码试试就知道啦。
gzpoplar 2006-10-25
  • 打赏
  • 举报
回复
主程序结束子程序也结束啊。
pork 2006-10-25
  • 打赏
  • 举报
回复
可是如果我调用了
destroyApp(false);
notifyDestroyed();
难道作为MIDlet的主线程不就结束生命周期了,若此时调用如联网进程还没有结束,难道就说主线程因此也没有结束?
gzpoplar 2006-10-25
  • 打赏
  • 举报
回复
是啊,你可以在主线程内写一段代码监视子线程的状态(子线程的静态变量之类的),
然后根据状态做你想做的事情。

关键是主线程不能exit()
pork 2006-10-25
  • 打赏
  • 举报
回复
果真如楼上说的“子线程没结束,主线程就不会结束”吗?

13,100

社区成员

发帖
与我相关
我的任务
社区描述
Java J2ME
社区管理员
  • J2ME社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧