线程的五种基本状态

weblog 826 0 0

线程的五种基本状态:初始化、可运行、运行、阻塞、终止

阻塞状态分为:等待阻塞、同步阻塞、其他阻塞三种方式

等待阻塞:调用某锁对象的wait方法可使当前线程进入等待阻塞状态,并且该线程放弃所有资源(包括cpu资源和锁资源)并且释放锁标记,jvm会把该线程放入等待池中,而且不会自动唤醒该线程,必须由其他线程调用同一锁对象的notify方法或notifyAll方法或者wait时间到则该线程进入锁池状态,并根据jvm的调度重新获取锁资源。获取到锁资源的线程进入就绪状态并等待cpu的调度。

同步阻塞:线程获取synchronized同步锁失败进入阻塞状态

其他阻塞:sleep()方法或join()方法,该类型阻塞会自动唤醒,sleep()超时,join()等待子线程完成后线程会自动唤醒而处于就绪状态,该状态不会释放锁资源,但会释放CPU()资源,会暂时放弃对CPU的占有。

线程状态

猜你喜欢
java基础 2656 线共包括以下5。1.新建(New):线对象被创建后,就进入了新建。例如,Threadthread=newThread()。2.就绪(Runnable):也被称为“可执行
official 815 《操作系统》进一次执行。在这个执行过中,有时进正在被CPU处理,有时又需要等待cPu服务,可见,进是会有各变化。为了方便对各个进管理,操作系统需要将进
java基础 4393 java启动线方式1.继承Thread类,重写run方法,调用start方法启动线2.实现Runnable接口,重写run方法,调用start方法启动线3.实现Callable接口代码如
java基础 2970 1.什么是线通信线之间通信两个问题是互斥和同步。线同步是指线之间所具有制约关系,一个线执行依赖另一个线消息,当它没有得到另一个线消息时应等待,直到消息到达时才被唤醒
weblog 1007 区别:进是操作系统资源分配单位,而线是处理器任务调度和执行单位。包含关系:一个进内可以有多个线(默认有一个主线),线是进一部分,必须依赖于进而存在,不能独立存在。资源共享:进之间是不共享资源,多个线之间是共享资源,所以存在资源竞争问题。
java基础 2151 中断,但是不会终止当前线运行,那么此线终止不终止还是取决于线代码。isInterrupted():该方法用来判断某线终端,返回true/falseinterrupted():
official 748 《计算机组成原理》运算器组成如下运算器组成控制器组成控制器组成完成一条指令步骤完成一条指令步骤计算机工作过描述起来非常复杂,不太好描述,我也是截图贴在了这里(原视
java基础 1629 1.先看一下线生命周期转换图(学java此图必背)篇文章主要目不是分析线之间转换,而主要是研究一下线之间通讯机制,以及Objectwait方法和notify方法。所以
目录
没有一个冬天不可逾越,没有一个春天不会来临。最慢的步伐不是跬步,而是徘徊,最快的脚步不是冲刺,而是坚持。