Java线程

本文详细解析了Java线程的基本状态及其控制方法,包括线程让出CPU资源、线程休眠、对象等待等操作的特点及适用场景。此外,还探讨了启动线程的两种方式之间的区别,并分析了线程的优先级、并行与同步的概念,以及如何避免程序中的死锁现象。

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



 1.线程的状态


 

1.1:yield()让出CPU资源

1.2:sleep是thread类的方法;不释放锁;自动苏醒;任意地方使用

1.3:wait是Object类的方法;释放锁;外部唤醒;只能在同步方法和同步块中使用

2.1:调用run方法和Start方法的区别——调用run启动的是个普通的方法;调用Start方法启动的是一个并行的新线程。

2.2:资源回收——主线程在子线程执行完毕后才做回收工作,但在子线程运行时主线程也在运行——并行。

2.3:优先级——概率大些,先后顺序随机。

3:并行:

==>

4同步

4.1:

4.2:监视器——一个监视器只有一把锁。锁锁定的是整个对象,而不是部分。

4.3同步方法——锁在调用方法上

4.4:同步块——锁在资源上;监视器灵活定义

==>

5:死锁:当2个线程循环依赖于一对同步对象时将发生

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值