zoukankan      html  css  js  c++  java
  • 基础线程机制--Daemon,sleep(),yield()

    Daemon

      守护线程是程序运行时在后台提供服务的线程,不属于程序中不可或缺的部分,当所有非守护进程执行完成时,程序也就终止,同时会杀死所有的守护进程。main()属于非守护线程。可以使用setDaemon()将一个线程设置为守护线程。

    public static void main(String[]args){
        Thread thread=new Thread(new MyRunnable());
        thread.setDaemon(true);
    }
    

    sleep()

      Thread.sleep(millisec)方法会休眠当前正在执行的线程,millisec的单位为毫秒

    ​ sleep()可能会抛出InterruptedException,因为异常不能跨线程传播回main()中,因此必须在本地进行处理,线程中抛出的其他异常也需要在本地进行处理。

    public void run(){
        try{
            sleep(100);
        }catch(Exception e){
            e.printStackTrace();
        }
    }
    

    yield()

      对静态方法yield()调用声明了当前线程已经完成了生命周期中最重要的部分,可以切换给其他的线程来执行。该方法只是对线程调度器的一个建议,而且也只是建议由相同优先级的其他线程可以运行。

    public void run(){
        Thread.yield();
    }
    

  • 相关阅读:
    HTML 网页创建
    CSS3 opacity
    两数相加的和
    九九乘法表
    Linux下的Makefile初入
    linux 下定义寄存器宏 实现类似于STM32的寄存器操作
    Linux 编译与交叉编译
    linux IMX6 汇编点亮一个LED灯
    Linux基本指令与作用
    C# Task 源代码阅读(2)
  • 原文地址:https://www.cnblogs.com/yjxyy/p/10695248.html
Copyright © 2011-2022 走看看