Java Thread 多线程 总结概括

本文详细介绍了Java中实现多线程的两种方式:继承Thread类和实现Runnable接口。此外还探讨了线程的生命周期、线程操作方法如休眠与加入、线程中断及优先级设置,以及线程同步机制等核心概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java Thread 多线程 总结概括

1、实现线程的两种方式

1.1 继承Thread 类,并实现run()方法,然后创建一个对象并调用其start()方法

1.2 创建一个类实现Runnable接口,并用该类去创建一个Thread对象,然后调用 start方法

2、线程的生命周期

  • 出生状态 刚创建时的状态
  • 就绪状态 可执行状态
  • 运行状态
  • 等待状态 调用 wait 方法进入的状态,必须调用 notify或者 notifyall方法来唤醒
  • 休眠状态 一般是调用 sleep方法进入
  • 阻塞状态 运行状态下发出输入输出或者执行到同步代码块
  • 死亡状态 run方法里面的东西运行完了

3、线程操作的方法

3.1 线程的休眠

sleep方法

3.2 线程的加入

线程的加入就是指A加入到B线程中,那么B线程得在A线程执行完才能接着执行。
在A线程的 run 方法中调用 ThreadB.join()

3.3 线程的中断

调用线程的 interrupt()方法,将会退出 run方法,并且抛出 InterruptedException异常,通过捕捉这个异常并设置异常处理函数可完成线程中断业务的处理

4、线程的优先级

  1. 线程的优先级有10级,最低1级 Thread.MIN_PRIORITY,最高10级Thread.MAX_PRIORITY,普通(默认)5级 Thread.NORM_PRIORITY
  2. 通过 setPriority()来设置任务的优先级
  3. 系统会首先给优先级高的分配时间片

5、线程同步

两种同步机制

1. 同步块

synchronized""){
  ...
}

同时只能有一个线程能运行代码块中的内容.

2. 同步方法

synchronized void f(){
  ...
}

当某个对象用了同步方法是,该对象 上的其它同步方法必须等待该同步方法执行完毕后才能执行.

参考文献 《Java从入门到精通》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值