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

湖南信息网官方网站铭坐网站建设

湖南信息网官方网站,铭坐网站建设,好看简单易做的网站,附近企业建站公司文章目录 一、关于线程的状态二、观察线程的所有状态1. NEW状态2. TERMINATED状态3. RUNNABLE状态4. TIMED_WAITING 一、关于线程的状态 进程最核心的状态#xff0c;一个是就绪状态#xff0c;一个是阻塞状态#xff08;对于线程同样使用#xff09;。 以线程为单位进行调… 文章目录 一、关于线程的状态二、观察线程的所有状态1. NEW状态2. TERMINATED状态3. RUNNABLE状态4. TIMED_WAITING 一、关于线程的状态 进程最核心的状态一个是就绪状态一个是阻塞状态对于线程同样使用。 以线程为单位进行调度的。 在Java中又给线程赋予了一些其他的状态。 线程的状态是一个枚举类型 Thread.State public class ThreadState {public static void main(String[] args) {for (Thread.State state : Thread.State.values()) { //遍历枚举中的每个元素System.out.println(state);}} }二、观察线程的所有状态 线程的状态一共有6个 NEW安排了工作, 还未开始行动。Thread对象已经有了.start()方法还没调用TERMINATED工作完成了。Thread对象还在内核中的线程已经没了RUNNABLE可工作的又可以分成正在工作中和即将开始工作。就绪状态 线程已经在cpu上执行了/线程正在排队等待上cpu执行TIMED_WAITING表示排队等待其他事情阻塞由于sleep这种固定的方式产生的阻塞WAITING表示排队等待其他事情阻塞由于wait这种不固定时间的方式产生的阻塞BLOCKED表示排队等待其他事情阻塞由于锁竞争导致的阻塞 后三个都是阻塞状态是把三种不同的阻塞状态的原因给拎出来了。这样后续定位“线程卡死”问题的时候就很容易通过状态来初步确定卡死的原因是什么了。 1. NEW状态 并没有调用start() 也并没有调用线程此时它对象里面的状态就是new状态开始状态。 public static void main(String[] args) {Thread t new Thread(() - {while (true) {}});//在调用 start 之前获取状态此时就是NEW状态System.out.println(t.getState()); //并没有调用start() 也并没有调用线程此时它对象里面的状态就是new状态//运行结果NEW 2. TERMINATED状态 在线程执行结束之后获取线程状态此时是TERMINARED状态结束状态。 public static void main(String[] args) throws InterruptedException {Thread t new Thread(() - {});t.start();t.join(); //通过join方法进行等待//在线程执行结束之后获取线程的状态此时是TERMINARED状态System.out.println(t.getState());//执行结果TERMINARED 3. RUNNABLE状态 表示此线程正在运行当中或者它随时准备去运行此时它就是就绪状态。 public static void main(String[] args) throws InterruptedException {Thread t new Thread(() - {while (true) { //此线程全速运行}});t.start();for (int i 0; i 5; i) {System.out.println(t.getState());Thread.sleep(1000); //主线程中每隔1秒钟打印一次}}//运行结果 RUNNABLE RUNNABLE RUNNABLE RUNNABLE RUNNABLE//且RUNNABLE每1s中运行一次4. TIMED_WAITING 表示指定一定时间来进行等待。 public static void main(String[] args) throws InterruptedException {Thread t new Thread(() - {while (true) {try {Thread.sleep(1000); //等待1s} catch (InterruptedException e) {e.printStackTrace();}}});t.start();for (int i 0; i 5; i) {System.out.println(t.getState());Thread.sleep(1000);}} }//输出结果 RUNNABLE TIMED_WAITING TIMED_WAITING TIMED_WAITING TIMED_WAITING//设置了等待1s再执行所以第1s没有执行到打印主线程的代码上述内容是多进程中的四种状态。
http://www.hkea.cn/news/14408303/

相关文章:

  • 网站移动端流量网站建设个人简历
  • 深圳网站建设jm3q深圳网站建制作
  • 商城网站建设模板下载白云区建材网站建设
  • 经营范围网站开发运营视频网站用虚拟主机
  • 西宁网站seo公司郑州自助建站软件
  • 免费的手机网站模板域名注册长沙有限公司
  • 霸屏网站开发找设计师网站
  • 用php做的大型网站有哪些什么公司做网站好
  • 郑州网站关wordpress 4.8
  • python 快速搭建网站标智客免费logo设计
  • 搭建网站服务器多少钱外贸采购网
  • 清远网站制作公司海城网站建设
  • 学网站建设需要用哪几个软件网站开发和网络开发区别
  • 视频网站建设需要多少钱wordpress动漫电影主题
  • 电子商务网站建设期末试题网站主页跳转index
  • 找个做网站的人郑州网站优化培训
  • 阿里能帮做网站吗seo谷歌推广
  • 网站建设原理试卷网页设计基础教程结课论文
  • 天河网站建设企业花都区网站建设
  • c 做商务网站方便吗百度地图网页版入口
  • 手机网站商城源码用什么工具修改wordpress
  • 做网站还是自媒体更适合赚钱网站建设合同书注意事项
  • 响应式网站自助建设平台沈阳城市建设学院官方网站
  • 南京做微网站做logo去哪个网站
  • 成品网站管理系统源码服务号微网站怎么做的
  • 上海内贸网站建设点评网站开发
  • wordpress主题语言包深圳如何优化
  • 秦皇岛网站优化有没有专门做二手电脑的网站
  • 虚拟主机空间免费网站优化的文章
  • 上海教育网站建设邯郸市建设局网站材料下载入口