tank2140896 2013-08-03 17:32
浏览 182
已采纳

这种关闭线程的方法是否安全或者有什么不足

这种关闭线程的方法是否安全或者有什么不足?
代码如下:
[code="java"]
package test;

public class Test extends Thread{

private boolean b = true;

/**
 * 启动线程的方法
 */
synchronized public void run(){
    System.out.println("线程启动");
    while(b){
        //做一些事
    }
}

/**
 * 关闭线程的方法
 */
public void close(){
    b = false;
    System.out.println("关闭线程");
}

}
[/code]

  • 写回答

4条回答 默认 最新

  • zuoshang 2013-08-04 11:46
    关注

    这种做法应该没什么问题,我在开源软件源码里也看到过。不过就是要注意一点,在b被设置为false的时候,run方法可能刚好进入while,这样在你close之后,还会多做一次//做一些事

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
  • ¥30 python代码,帮调试
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿