首页 > 其他分享 >线程状态中的阻塞究竟该如何理解?

线程状态中的阻塞究竟该如何理解?

时间:2022-10-01 22:01:34浏览次数:49  
标签:Thread thread state Object 阻塞 waiting 理解 线程 WAITTING

康师傅给定的从线程状态划分的转换关系

idea中源码对BLOCKED和WAITTING的解释说明

BLOCAED:
    Thread state for a thread blocked waiting for a monitor lock. A thread in the blocked state is waiting for a monitor lock to enter a synchronized block/method or reenter a synchronized block/method after calling Object.wait.
WAITTING:
	Thread state for a waiting thread. A thread is in the waiting state due to calling one of the following methods:
Object.wait with no timeout
Thread.join with no timeout
LockSupport.park
A thread in the waiting state is waiting for another thread to perform a particular action. For example, a thread that has called Object.wait() on an object is waiting for another thread to call Object.notify() or Object.notifyAll() on that object. A thread that has called Thread.join() is waiting for a specified thread to terminate.

通过对比可知,康师傅是吧源码中的BLOCKED和WAITTING以及TIMED-WAITTING都一并归入了阻塞的状态。
所以,对于这个阻塞,大家平时都是怎么理解的呢?

标签:Thread,thread,state,Object,阻塞,waiting,理解,线程,WAITTING
From: https://www.cnblogs.com/dequanth/p/16747864.html

相关文章

  • java多线程--3 线程状态、线程方法、线程类型
    java多线程--3线程状态、线程方法、线程类型线程状态创建状态:**就绪状态:**进入状态:创建状态:启动线程阻塞状态:阻塞解除运行状态:释放CPU资源阻塞状态:......
  • 机器学习编译、TVM感性理解
    课程主页首先网上有很多关于这个课程的介绍,所以不直接陈述详细内容了,写一些自己的理解,可能不会仅限于当前机器学习编译课程,可能会用到TVM的理解。网上诸多大佬都有阐述,例......
  • 对嵌入式开发过程中设计的浅显理解
    设计的目的(统一思想)从IPD项目流程中理解,设计阶段介于需求定义和功能(电路和程序)实现之间,所以要承上启下,即证明(讲明白)我们最终可呈现出来的东西,是如何满足需求的,......
  • 肖sir_Java 多线程___Java 网络协议__20
    Java网络编程1.1网络编程介绍网络编程指的就是直接或间接地通过网络协议与其他计算机进行通信。网络编程中的基础概念:1,网络分类2,网络编程模型3,网络协议4,套接字和......
  • 肖sir_Java 多线程___18
    Java多线程进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,一个应用程序至少包含一个进程。线程(thread)是操作系统能......
  • 深入理解计算机系统(第3章 程序的机器级表示②)
    目录3.3数据格式3.4访问信息3.4.1操作数指示符3.4.2数据传送指令MOV类MOVZ类MOVS类3.4.3数据传送示例3.4.4压入和弹出栈数据3.3数据格式由于是从16位体系结构扩展......
  • 多线程案例 : 等待别人到达开饭
    这里我们要把别人当作一个线程。当每一个线程开启时,我们指定一个点,让他们同时到达并执行,所以使用CyclicBarrier设定一个障碍,并设置这个障碍的参数,指定规则由多少个线程同......
  • CountDownLatch在多线程统计另一个线程的动向
    CountDownLatch在CountDownLatch类里面有两个方法一个是await()字面意思是等待的一次,他和sleep()方法的区别就是sellp()会自己醒过来,而await()方法需要另一个方法来唤醒......
  • SLA理解
    1.介绍 转自:https://zhuanlan.zhihu.com/p/488086057SLA(ServiceLevelAgreement)服务等级协议,指的是系统服务提供者(provider)对客户(customer)的一个服务承诺。 类型和......
  • 系统过载理解
    转自:https://cloud.tencent.com/developer/article/1329609https://www.361shipin.com/blog/1552697548710346752,讲的很好1.介绍 过载:系统负载超过系统最大的处理能力......