• Java并发编程: Thread常见方法


    start()

    功能说明

    启动一个新线程,在新的线程运行 run 方法中的代码

    注意

    start 方法只是让线程进入就绪,里面代码不一定立刻运行(CPU 的时间片还没分给它)。每个线程对象的start方法只能调用一次,如果调用多次会产生IllegalThreadStateException异常

    run()

    功能说明

    新线程启动后会调用的方法

    注意

    如果在构造 Thread 对象时传递了 Runnable 参数,则线程启动后会调用 Runnable 中的 run 方法,否则默认不执行任何操作。但可以创建 Thread 的子类对象,来覆盖默认行为。

    join()

    功能说明

    等待线程运行结束

    join(long n)

    功能说明

    等待线程运行结束,最多等待 n 毫秒

    getId()

    功能说明

    获取线程长整型的 id

    注意

    id 唯一

    getName()

    功能说明

    获取线程名

    setName(String name)

    功能说明

    修改线程名

    getPriority()

    功能说明

    获取线程优先级

    setPriority(int newPriority)

    功能说明

    修改线程优先级

    注意

    java中规定线程优先级是1~10 的整数,较大的优先级能提高该线程被 CPU 调度的机率。

    getState()

    功能说明

    获取线程状态

    注意

    Java 中线程状态是用 6 个 enum 表示,分别为:
    NEW
    RUNNABLE
    BLOCKED
    WAITING
    TIMED_WAITING
    TERMINATED

    isInterrupted()

    功能说明

    判断是否被打断

    注意

    不会清除打断标记

    isAlive()

    功能说明

    线程是否存活(还没有运行完毕)

    interrupt()

    功能说明

    打断线程

    注意

    如果被打断线程正在 sleep,wait,join 会导致被打断的线程抛出InterruptedException,并清除打断标记 ;如果打断的正在运行的线程,则会设置打断标记 ;park 的线程被打断,也会设置打断标记

    static interrupted()

    功能说明

    判断当前线程是否被打断

    注意

    会清除打断标记

    static currentThread()

    功能说明

    获取当前正在执行的线程

    static sleep(long n)

    功能说明

    让当前执行的线程休眠n毫秒,休眠时让出CPU的时间片给其它线程

    static yield()

    功能说明

    提示线程调度器让出当前线程对CPU的使用

    注意

    主要是为了测试和调试

  • 相关阅读:
    RabbitMQ的特点
    Maven Helper mvn项目冲突如何解决
    Spring Boot + Vue的网上商城之springsecurity+jwt+redis实现用户权限认证实现
    这几招教你如何增加食物中铁的吸收
    Vue中的$attrs和inheritAttrs
    【 java 枚举类】java 枚举类
    基于JavaWeb的校园故障报修系统(源码+数据脚本+论文+技术文档)
    基于FreeBSD 8.0 Ports配置nginx+php+mysql高性能web平台【解决方案】
    Spire.Office 7.8.4 for NET --2022-08-17
    NewStarCTF2023week4-RSA Variation II
  • 原文地址:https://blog.csdn.net/m0_58535137/article/details/126197309