当前位置: 首页 > wzjs >正文

静态宠物网站设计论文专业营销的网站建设公司

静态宠物网站设计论文,专业营销的网站建设公司,深圳网站建设 贝尔利,证件制作目录 前言1. NEW2. TERMINATED3. RUNNABLE4. 三种阻塞状态总结 前言 本篇文章来讲解线程的几种状态。在Java中,线程的状态是一个枚举类型,Thread.State。其中一共分为了六个状态。分别为:NEW,RUNNABLE,BLOCKED,WAITING,TIMED_WAITING, TERMI…

目录

  • 前言
  • 1. NEW
  • 2. TERMINATED
  • 3. RUNNABLE
  • 4. 三种阻塞状态
  • 总结

前言

本篇文章来讲解线程的几种状态。在Java中,线程的状态是一个枚举类型,Thread.State。其中一共分为了六个状态。分别为:NEW,RUNNABLE,BLOCKED,WAITING,TIMED_WAITING,
TERMINATED

1. NEW

new:安排了⼯作, 还未开始⾏动
new状态表示Thread对象已经创建,但是并没有执行Start()语句

public class Demo13 {public static void main(String[] args) {//观看线程的NEW状态Thread t = new Thread(() -> {});System.out.println(t.getState());t.start();}
}

在这里插入图片描述

2. TERMINATED

terminated:⼯作完成了.
就是表示线程结束的状态

public class Demo13 {public static void main(String[] args) throws InterruptedException {//观看线程的NEW状态Thread t = new Thread(() -> {});System.out.println(t.getState());t.start();t.join();System.out.println(t.getState());}
}

在这里插入图片描述

3. RUNNABLE

runnable:可⼯作的. ⼜可以分成正在⼯作中和即将开始⼯作.
runnable即就绪状态

public class Demo13 {public static void main(String[] args) throws InterruptedException {//观看线程的NEW状态Thread t = new Thread(() -> {while (true) {//什么也不做}});System.out.println(t.getState());t.start();System.out.println(t.getState());t.join();System.out.println(t.getState());}
}

在这里插入图片描述
由于内部是while死循环,main一直在等待t线程,故不会结束。

4. 三种阻塞状态

BLOCKED,WAITING,TIMED_WAITING 都表示排队等着其他事情,也就是都表示阻塞状态。但是还是有区别的,BLOCKED表示由于加锁产生的阻塞,WAITING表示无超时时间的阻塞,TIMED_WAITING表示有超时时间的阻塞。也就是说使用join()进行等待就是WAITING,使用join(time)或者使用sleep()进行等待就是 TIMED_WAITING。
下面观察WAITING和TIMED_WAITING状态。
使用一个监视器线程来观察main的状态

public class Demo13 {public static void main(String[] args) throws InterruptedException {//获取mainThread mainThread = Thread.currentThread();//观看线程的NEW状态Thread t = new Thread(() -> {while (true) {try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}});System.out.println(t.getState());t.start();System.out.println(t.getState());//观察使用一个监视器线程来观察main线程的状态Thread monitor = new Thread(()-> {try {Thread.sleep(1000);System.out.println(mainThread.getState());} catch (InterruptedException e) {e.printStackTrace();}});System.out.println("main等待前的状态:" + mainThread.getState());monitor.start();System.out.println("main线程开始等待");t.join();System.out.println(t.getState());}

在这里插入图片描述
观察TIMED_WAITING状态只需将最下面的join加入参数:

public class Demo13 {public static void main(String[] args) throws InterruptedException {//获取mainThread mainThread = Thread.currentThread();//观看线程的NEW状态Thread t = new Thread(() -> {while (true) {try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}});System.out.println(t.getState());t.start();System.out.println(t.getState());//观察使用一个监视器线程来观察main线程的状态Thread monitor = new Thread(()-> {try {Thread.sleep(1000);System.out.println(mainThread.getState());} catch (InterruptedException e) {e.printStackTrace();}});System.out.println("main等待前的状态:" + mainThread.getState());monitor.start();System.out.println("main线程开始等待");t.join(5000);System.out.println(t.getState());}
}

在这里插入图片描述
BLOCKED状态需要对线程进行加锁,加锁操作将在后面的文章中讲到,故在此处不演示BLOCKED状态。

总结

本文章介绍了java线程中的六个状态,在实际工作中调试中就可能需要打印线程状态,来查找程序中的错误。


文章转载自:

http://Cy2CXLiz.nptLs.cn
http://4acVhFj0.nptLs.cn
http://OVovs4cx.nptLs.cn
http://NPw4XXm7.nptLs.cn
http://7SwyrQ6A.nptLs.cn
http://5JBRFXR1.nptLs.cn
http://7N4U1iL6.nptLs.cn
http://ySIATBjk.nptLs.cn
http://A1T9w3LW.nptLs.cn
http://772PPnR6.nptLs.cn
http://UWrFCuw4.nptLs.cn
http://AsCxXMUX.nptLs.cn
http://147D2yVM.nptLs.cn
http://J36uJZpI.nptLs.cn
http://1PXJSGiL.nptLs.cn
http://d5SqSJnc.nptLs.cn
http://oOlWouFD.nptLs.cn
http://i7LeBnks.nptLs.cn
http://Duv0QZ2t.nptLs.cn
http://v19VeQzA.nptLs.cn
http://1pPDfN4J.nptLs.cn
http://P6rMBhMx.nptLs.cn
http://PBrHDlci.nptLs.cn
http://7be24wTT.nptLs.cn
http://hahQVxOn.nptLs.cn
http://BkZNoBTc.nptLs.cn
http://UUfLfcQJ.nptLs.cn
http://RRtZHQRg.nptLs.cn
http://ky16o9Wi.nptLs.cn
http://UVTL8ITE.nptLs.cn
http://www.dtcms.com/wzjs/695710.html

相关文章:

  • 网站demo怎么做公司做网站费用怎么记账
  • 备案 网站负责人 法人长春网站推广网诚传媒
  • 视频网站做短视频关于大棚建设的网站
  • 湖北省住房部城乡建设厅网站首页百度ai助手入口
  • 网站ip地址查询免费下载图片设计
  • 内网网站怎么建设网站的表单
  • 视频网站用什么cms东莞网页
  • 网站正在建设代码塑料袋销售做哪个网站推广好
  • 网站建设维护方案ppt网站开发平台 eclipse
  • 微网站有哪些济南软件外包公司
  • 网站关键词优化效果子主题wordpress
  • 网站设计模板素材无锡网站建设哪家做的比较好
  • 网站建设方案范本合肥网站seo服务
  • 山东济南网站制作设计师网上接单软件
  • win7 iis网站设置写文章免费的软件
  • 漳州市城乡建设局网站6三星企业网站建设ppt
  • 如何做学校的网站广东建设行业招聘 什么网站
  • 深圳 网站定制建筑网结构
  • 越秀网站建设公司微信外链网站
  • 常见的电子商务平台有哪些谷歌优化 网站建设
  • asp和php的建站区别wordpress标题加载中
  • 龙拓网站建设wordpress 中文安装教程
  • 企业网站推广的线上渠道有哪些高端网站设计报价
  • 折再返怎么 做网站怎么用文件传输协议登录网站
  • 网站开发设计内容wordpress占用空间
  • 网站建设福州wordpress 列表 分类
  • 做兼职的网站 知乎科技股份公司网站模板
  • 设计素材网站图案免费小网站如何做密码找回
  • 上海网站备案拍照地点服务好质量好的网站制作
  • 网站策划初级方案模板南充网站制作