首页 > 其他分享 >线程的停止(建议线程正常运行停止)

线程的停止(建议线程正常运行停止)

时间:2023-03-04 10:45:20浏览次数:29  
标签:ts System 停止 线程 TestStop public 运行

package com.Java;

public class TestStop implements Runnable {
// 测试线程停止
// 1.建议线程正常停止 -->利用次数 不建议死循环
// 2.建议使用标志位--> 设置一个标志位
// 3.不要使用stop和destroy等过时和jdk不建议使用的方法

// 1.设立标志位 为了线程安全 设成私有
private boolean flag = true;

@Override
public void run() {
int i = 0;
while (flag) {
System.out.println("线程正在运行" + i++);
}
}

// 2.设立一个公开的方法 转换标志位
public void stop() {
flag = false;
}

public static void main(String[] args) {
TestStop ts = new TestStop();
new Thread(ts).start();
for (int i = 0; i < 1000; i++) {
System.out.println("main线程" + i);
if (i == 900) {
System.out.println("线程该结束了");
ts.stop();
}
}

}

}

标签:ts,System,停止,线程,TestStop,public,运行
From: https://www.cnblogs.com/fc666/p/17177792.html

相关文章

  • 多线程
    #线程类fromthreadingimportThreaddeffunc():foriinrange(1000):print("func",1)if__name__=='__main__':t=Thread(target=func......
  • 用户级线程和内核级线程
    用户级线程的特点:不需要修改内核代码,内核不知道线程的存在,所有的线程管理都由应用程序管理。用户级线程的优点:所有的线程都在用户空间,所以它在切换线程时不需要从用户态切......
  • 该如何正确的中断一个线程的执行?
    摘要:本文以一个案例的形式,来为大家详细介绍下为何中断执行的线程不起作用。本文分享自华为云社区《【高并发】我们该如何正确的中断一个线程的执行??》,作者:冰河。写在前......
  • Laravel运行项目提示/composer/autoload_real.php问题
    1.确保已安装Composer。如果没有请安装.安装步骤参考:http://www.360doc.com/content/22/0919/15/65839921_1048527526.shtml2.进入Laraver项目的根目录,通过命令窗口执行......
  • Visual Studio2010保姆式安装教程(VS2010 旗舰版),以及如何运行第一个C语言程序,超详细
    安装前请关闭杀毒软件,系统防火墙,断开网络连接 通过百度网盘分享的文件:VS2010.zip链接:https://pan.baidu.com/s/1yQUUCxMJP7FMaistFX94SQ提取码:96ga复制这段内容......
  • 不规范使用PageHelper导致线程污染出现报错
    问题复现:在原有项目基础上开发获取最新的第一个模板的接口。接口中只有一个查询sql:selectxfromxwherexlimit1。调试总是报错:org.springframework.jdbc.BadSqlGr......
  • 工作频率运行在3.0 ~ 4.5 GHz的高效率GaAs HBT MMIC驱动放大器-CBG9326
    国内使用UWB高精度室内定位的行业应用产品,工作频段大部分都在3.5Ghz-6GHz低频段(Channel2(特定场景如管隧矿)和Channel5)范围,因此只能应用于煤矿、监狱等封闭的小众市场。从......
  • 全局视角看技术-Java多线程演进史
    作者:京东科技文涛全文较长共6468字,语言通俗易懂,是一篇具有大纲性质的关于多线程的梳理,作者从历史演进的角度讲了多线程相关知识体系,让你知其然知其所以然。前言2022......
  • Python 异步: 在 Asyncio 中运行阻塞任务(14)
    阻塞任务是阻止当前线程继续进行的任务。如果在asyncio程序中执行阻塞任务,它会停止整个事件循环,从而阻止任何其他协程继续进行。我们可以通过asyncio.to_thread()和......
  • linux下进程和线程的区别和联系
    进程用fork()或者vfork()生成(vfork是专门为了加载其他程序的子程序而优化的,随着fork()的优化,vfork已经被优化)fork()生成的子进程与父进程共享代码区内存,对于其他内存fork......