Windows操作系统是多任务操作系统,它以进程为单位。每个独立执行的程序被称为一个进程,而每个进程又包含多个线程。系统可以分配给每个进程一段使用CPU的时间(CPU时间片),CPU在这段时间中执行某个进程,同理线程也会被分配一小段时间,进行并发执行线程
线程具有生命周期,其中包括五个状态,分别为出生状态,就绪状态,运行状态,暂停状态(休眠/等待/阻塞)和死亡状态
- 出生状态 被创建时的状态称为出生状态
- 就绪状态 当线程对象调用starts()方法后进入就绪状态
- 运行状态 当线程得到系统资源后进入运行状态。 线程一旦进入运行状态,就会在就绪与运行状态下转换,同时也也可能进入暂停或死亡状态。
- 暂停状态 当在运行状态下调用sleep()方法,wait()方法或者发生阻塞时,就会进入暂停状态。 当在休眠结束,或者调用notify()或notifyAll( )方法,或者阻塞解除时,线程会重新进入就绪状态
- 死亡状态 当线程的run()方法执行完毕,或者线程发生错误,异常时,线程进入死亡状态
两种方法
线程的休眠 Sleep( )
sleep()方法可以指定线程的休眠时间,线程的休眠时间以毫秒为单位
线程的等待死亡(强行插队)方法join( )
join( )方法,等待线程死亡
线程的礼让Yield()
yield()方法,线程的礼让:1.让当前执行的线程暂停,但不阻塞 2.让cpu重新调度,但不一定礼让成功
Original: https://www.cnblogs.com/wfy-studying/p/16155061.html
Author: ShamUnite
Title: 多线程
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/570614/
转载文章受原作者版权保护。转载请注明原作者出处!