java多线程1-基础概念

线程的五个状态:

1、新建状态(New): 线程对象被创建之后,就进入新建状态。 Thread thread =  new Thread();

2、就绪状态(Runnable):线程对象被创建之后,其他线程调用了该对象的start()方法,从而来启动该进程。 thread.start(); 处于就绪态的线程,随即可能被CPU调度执行

3、运行状态(Running):线程获取CPU权限进行执行。线程只能从就绪态进入运行状态

4、阻塞状态(Blocked):阻塞状态是线程因为某种原因放弃CPU的使用权,暂时停止运行。直到线程再次进入就绪态,才有机会转到运行状态。阻塞的情况有:

    (1)等待阻塞。通过调用线程的wait()方法,让线程等待某工作的完成

    (2)同步阻塞。线程在获取synchronized同步锁失败时,会进入同步阻塞状态

    (3)其他阻塞。通过调用线程的sleep()或join()或发出了I/O请求时,线程会进入到阻塞状态。当sleep()状态超时、join()等待线程终止或者超时、或者I/O处理完毕后,线程重新转入就绪态

5、死亡状态(Dead):线程执行完毕或者因异常退出了run()方法,该线程结束生命周期

 

Object类,定义了wait(),notify(),notifyAll()等休眠/唤醒函数

Thread类,定义了一系列的线程操作函数,如sleep()休眠函数,interrupt()中断函数,getName()获取线程名称等

synchronized关键字,区分为synchronized代码块和synchronized方法。它的作用是让线程获取对象的同步锁。

方法,该线程结束生命周期
[Fāngfǎ, gāi xiànchéng jiéshù shēngmìng zhōuqí]
Method, the thread end of the life cycle
posted @ 2020-05-04 00:15  qumasha  阅读(112)  评论(0编辑  收藏  举报