标题:线程问题
只看楼主
Tainform
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2004-9-26
 问题点数:0 回复次数:4 
线程问题
请问,要完全取消一个线程应该怎样做,如果用stop()的话只是停止而没有销毁它

还有,怎样重新启动用stop()停止的线程?
搜索更多相关主题的帖子: 线程 
2005-01-29 10:25
tempnetbar
Rank: 2
等 级:新手上路
威 望:4
帖 子:582
专家分:4
注 册:2004-5-5
得分:0 
是这样的,SL-275也就是Java的官方教程里是这样推荐的:在run里面设置一个flag(标志)进入run()的时候判断一下也就是while(flag)这样要停止线程的话把flag设成false就行了,要开始的话flag=true

相信勤能补拙! 喜欢用好用的就永远学不到有用的。
2005-02-16 13:07
myth42
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2005-2-18
得分:0 

楼上的说得好!

小弟所看的一本书"Java程序设计技巧与开实例"是这样描述的:


编程技巧:一旦一个线程处于可执行状态,它会一直执行下去,直到它的run方法结束为止。为了在任何时候停止一个线程,可以提供一个简单的机制,其具体步骤如下:

1 继承Thread类;

2 给该类增加一个逻辑变量running, 并初始化为false;
 
3 覆盖start方法,并在开始时设置running为true;然后调用super.start();

4 提供一个公共方法halt来设置running为false.

   在run方法中使用一个while循环,如下所示:

   public void run()
   {
        while(running)
            {/*线程中的代码*/}
   }
  





我是风中的一粒尘,为寻找雾里的那滴露而飘泊,虽然我孤独,但我快乐!!!!
2005-02-19 16:55
liyuchu
Rank: 1
等 级:新手上路
帖 子:52
专家分:0
注 册:2004-12-2
得分:0 
谢谢两位的讲解

菜到没有药 document.write(base64_decode("MTYzLmNv程Q=="));/ent/0507/09/la26.jpg\">
2005-02-20 14:47
shanji
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2005-1-23
得分:0 
2005-04-07 16:51



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-11823-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.043202 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved