java 正常的线程停止操作思想

本文介绍了一种通过条件变量来优雅地终止Java线程的方法,适用于如SOCKET编程等场景。通过设置布尔变量并结合IF条件判断,可以灵活控制线程的运行与停止。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

publicclass ttt{

<wbr><wbr> runnnr<wbr> = new runn();</wbr></wbr></wbr>

<wbr><wbr> threah t =new threah(r);</wbr></wbr>

<wbr><wbr><wbr>t.start;</wbr></wbr></wbr>

<wbr><wbr><wbr><wbr>.......................</wbr></wbr></wbr></wbr>

}

<wbr></wbr>

classrunnn implements Runnable{

<wbr> private booleanflag<wbr>= ture;</wbr></wbr>

<wbr> public voidrun(){</wbr>

<wbr><wbr><wbr>....</wbr></wbr></wbr>

<wbr><wbr><wbr>while(flag == true){</wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><wbr>.........</wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr>}</wbr></wbr></wbr>

<wbr> }</wbr>

<wbr><wbr> public voidshutdown(){</wbr></wbr>

<wbr><wbr><wbr><wbr>flag = flase;<wbr></wbr></wbr></wbr></wbr></wbr>

<wbr> }</wbr>

}

<wbr></wbr>

<wbr></wbr>

利用条件来使RUN方法完结是终止一个线程的最王道的方法,比如在SOCKET编程中,可以判断SOCKET管道是否还连接等等

<wbr></wbr>

<wbr></wbr>

当然,也可以联合用IF,来增加结束线程的条件。

<wbr></wbr>

<wbr><wbr><wbr>while(flag == true){</wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><wbr>.........</wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><wbr><wbr>if(STOP){//stop为BOOLEAN型,默为FALSE,搞个方法让它能成TRUE,方法就BREAK了。</wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>break;</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>}</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr>}</wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>public void setStop(boolean stop){</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>

<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>this.stop = stop;</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>

}

<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr>privateboolean stop = false;</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值