Java多线程的简介说明

Java-教程王 Java教程 发布时间:2021-08-25 14:53:36 阅读数:7927 1 多线程
下文讲述Java多线程的简介说明

Java多线程

Java支持多线程
何为线程?
    一条线程为进程中单一顺序的控制流
    一个进程中包含多个线程,也可并发多个线程,每个线程运行不同的任务

线程的生命周期

新建状态
运用new关键字和Thread类或其子类建立一个线程对象后
此时该线程对象就处于新建状态
它保持这个状态直到程序 start() 这个线程
就绪状态
当线程对象调用了start()方法之后
该线程就进入就绪状态
就绪状态的线程处于就绪队列中,要等待JVM里线程调度器的调度
运行状态
当就绪状态的线程获取 CPU 资源
此时运行run()方法后
线程便处于运行状态
运行状态的线程可转换为:阻塞状态、就绪状态和死亡状态
阻塞状态
当一个线程执行了sleep(睡眠)、suspend(挂起)等方法
失去所占用资源之后,该线程就从运行状态进入阻塞状态
当睡眠时间指定时间后或获得设备资源后可以重新进入就绪状态
可以分为三种:
  1. 等待阻塞:运行状态中的线程执行wait()方法,使线程进入到等待阻塞状态
  2. 同步阻塞:线程在获取 synchronized同步锁失败(因为同步锁被其他线程占用)
  3. 其他阻塞:通过调用线程的sleep()或join()发出了I/O请求时,线程就会进入到阻塞状态
    当sleep() 状态超时,join() 等待线程终止或超时,或 I/O 处理完毕,线程重新转入就绪状态
死亡状态
一个运行状态的线程完成任务或由于其它原因导致线程转换为终止状态

线程的优先级

线程的优先级:有助于操作系统调用线程的顺序
线程的优先级是一个1~10的整数
每一个线程都会分配一个优先级-缺省情况下为5
当一个线程优先级比较高时,则比优先级低的线程更容易获取到系统资源
线程优先级注意事项:
     线程优先级并不能保证其线程的运行顺序
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaCourse/202108/859.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者