线程的生命周期

线程的生命周期


1.线程产生

2.线程存在

3.线程消亡


线程产生

  • Java提供了线程类Thread
  • Thread类在java.lang包中,使用该类不需要import语句进行引用
  • 可以通过继承Thread类或者实现Runnable接口的方式创建线程对象


线程存在——运行

  • 创建了线程对象之后,它需要调用start()方法获取使用CPU资源的排队机会
  • 轮到某个线程运行时,JVM(Java虚拟机)就把CPU的使用权交给这个线程,并调用这个线程的run()方法运行该线程

线程存在——中断

可以引起线程中断的情况

  • JVM将CPU的使用权从当前线程切换给其他线程
  • 线程在运行期间执行了sleep(int millis)方法,进入休眠状态,休眠时间结束或者休眠被吵醒(interrupt),才能退出休眠状态
  • 线程在运行期间执行了wait()方法,则这个线程中断,进入等待状态。可以使用notify()或者notifyAll()结束等待状态
  • 线程在运行期间,执行了阻塞线程的某个操作,例如读取键盘输入的字符等,则线程中断


线程消亡

  • 线程中的所有任务执行完毕,线程即消亡。
  • 线程执行过程中被提前强制终止,线程会消亡。


上一篇:B/S端开发工具DevExtreme Angular控件 - 常见功能


下一篇:php比较两个绝对时间的大小