关于线程池的问题???

qjsbha 2010-01-21 10:19:08
我现在有一个线程池,只是开线程的时候我唤醒线程执行任务,但在它执行过程中我现在想停止这个线程,怎么控制阿?我现在停止线程这块不知道怎么处理??
...全文
123 11 打赏 收藏 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
lzlwzs04 2010-01-22
  • 打赏
  • 举报
回复
学习
2到20个英文 2010-01-22
  • 打赏
  • 举报
回复
run 方法中的业务实现
你加boolean 表达示,只是完成了run 方法

所以结束了
2到20个英文 2010-01-22
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 qjsbha 的回复:]
引用 5 楼 hedangqing 的回复:
引用 3 楼 bao110908 的回复:
线程在运行中时,是不能随便停止的,这个观点需要澄清一下。

只能请求运行中的线程停止,但是这个线程是否会停止,完全由自己决定。一般来说没运行完成是不会停止的,除非其中有可以抛出 java.lang.InterruptedException 异常的代码存在。




是可以停止的吧。我现在是用一个布尔变量控制。线程中会在几个位置读取这个值进行判断是否退出,我要停止的时候就改变这个值!昨天作下来到现在看来效果还可以!
[/Quote]


那是你当前线程还没有进入 run 方法
xiesisi3 2010-01-22
  • 打赏
  • 举报
回复
[Quote=引用楼主 qjsbha 的回复:]
我现在有一个线程池,只是开线程的时候我唤醒线程执行任务,但在它执行过程中我现在想停止这个线程,怎么控制阿?我现在停止线程这块不知道怎么处理??
[/Quote]

我不太清楚你的需求,难道用sleep或wait不行吗?你说要永久停止是什么意思?中止线程?那么可以采用7楼的方法。
IT源哥 2010-01-22
  • 打赏
  • 举报
回复
线程执行启动一次而已啊,停止就是让线程跑完就行。如下:
while(true)
{
//这里加个判断条件,触发这个条件,线程就退出,也就停止了
if (***)
{
break;
}
}
qjsbha 2010-01-22
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 hedangqing 的回复:]
引用 3 楼 bao110908 的回复:
线程在运行中时,是不能随便停止的,这个观点需要澄清一下。

只能请求运行中的线程停止,但是这个线程是否会停止,完全由自己决定。一般来说没运行完成是不会停止的,除非其中有可以抛出 java.lang.InterruptedException 异常的代码存在。



[/Quote]
是可以停止的吧。我现在是用一个布尔变量控制。线程中会在几个位置读取这个值进行判断是否退出,我要停止的时候就改变这个值!昨天作下来到现在看来效果还可以!
2到20个英文 2010-01-21
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 bao110908 的回复:]
线程在运行中时,是不能随便停止的,这个观点需要澄清一下。

只能请求运行中的线程停止,但是这个线程是否会停止,完全由自己决定。一般来说没运行完成是不会停止的,除非其中有可以抛出 java.lang.InterruptedException 异常的代码存在。
[/Quote]

qjsbha 2010-01-21
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 monkeyking1987 的回复:]
Thread.sleep()可以让当前线程睡眠..
也可以调wait()方法
[/Quote]
我要永久停止。sleep肯定是不行的,我还要用这个线程呢。wait我试过。抛异常!而且并不能停止线程。
monkeyking1987 2010-01-21
  • 打赏
  • 举报
回复
Thread.sleep()可以让当前线程睡眠..
也可以调wait()方法
  • 打赏
  • 举报
回复
学习。
  • 打赏
  • 举报
回复
线程在运行中时,是不能随便停止的,这个观点需要澄清一下。

只能请求运行中的线程停止,但是这个线程是否会停止,完全由自己决定。一般来说没运行完成是不会停止的,除非其中有可以抛出 java.lang.InterruptedException 异常的代码存在。

62,620

社区成员

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

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