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个线程循环依赖于一对同步对象时将发生
本文详细解析了Java线程的基本状态及其控制方法,包括线程让出CPU资源、线程休眠、对象等待等操作的特点及适用场景。此外,还探讨了启动线程的两种方式之间的区别,并分析了线程的优先级、并行与同步的概念,以及如何避免程序中的死锁现象。
1707

被折叠的 条评论
为什么被折叠?



