理解异步,同步,阻塞,非阻塞之间的关系
来源:互联网 发布:美微网络柠檬视频tv 编辑:程序博客网 时间:2024/05/16 11:53
在学习nodejs时应该会说 nodejs是 异步非阻塞i/o而以前却并不了解这句话的意思 今天要梳理一下这些概念
首先 同步与异步
同步于异步关注的是消息通信机制 (synchronous communication/ asynchronous communication)。
同步:调用者等待被调用者的返回值之后,调用者才继续工作
异步:调用者调用之后被调用者马上返回,但是这里是没有返回结果的,这时候调用者可以进行其他操作,而对于被调用者的返回值则要通过通知调用者或者回调函数来处理
阻塞与非阻塞
关注的是程序在等待调用结果时,调用者所处的状态
阻塞:当被调用者被调用时,调用者被“挂起”,直到返回结果。
非阻塞:当被调用者被调用时,不会阻塞调用者自己。
举个例子 王大爷烧水
王大爷在厨房烧水,从他把水壶放到灶台上开始,他就开始在灶台边上等啊等,直到到水开了。
– 王大爷等水,同步, 王大爷等水的时候不干别的事,阻塞
王大爷觉得这样不好,然后买了个会响的水壶,然后他把水壶放到灶台上,随后他看电视去了,并告诉他老婆张大娘,水开了就去泡茶,然后自己看电视去了
-王大爷放完水壶以后水壶没有马上有结果 ,异步 ,水在烧的时候王大爷在看电视,非阻塞,张大娘泡茶,回调函数
这样一些就清晰多了
感谢这些文章
知乎-怎样理解阻塞非阻塞与同步异步的区别
使用异步 I/O 大大提高应用程序的性能
0 0
- 理解异步,同步,阻塞,非阻塞之间的关系
- 阻塞&非阻塞&同步&异步之间的关系
- 同步/异步、阻塞/非阻塞的理解
- 异步/同步、阻塞/非阻塞的理解
- 同步/异步、阻塞/非阻塞的理解
- 同步,异步,阻塞,非阻塞的理解
- 同步、异步、阻塞、非阻塞的理解
- 同步、异步,阻塞、非阻塞的理解
- 同步、异步、阻塞、非阻塞的理解
- 阻塞、非阻塞、同步、异步的理解
- 异步同步与阻塞非阻塞 及java IO、java newIO、java AIO之间的关系
- 同步、异步、阻塞、非阻塞概念和各自之间的关系
- 转:同步/异步 与 阻塞/非阻塞 的关系
- 同步和异步、阻塞和非阻塞的关系
- 同步/异步与阻塞非阻塞的关系
- 同步异步,阻塞和非阻塞的关系
- 阻塞、非阻塞;同步、异步之间的区别
- 异步,同步,阻塞,非阻塞个人理解
- linux 设备模型(一 bus)
- opencv特征提取
- 成为Java高手的25个学习目标
- eclipse部署web项目至本地的tomcat但在webapps中找不到
- 我觉得是时候要真的开始拼命了
- 理解异步,同步,阻塞,非阻塞之间的关系
- coj 1345: Grayscale
- 插入排序InsertSort
- k8测试的一个问题
- UGUI下拉列表修改(0813Edit)
- Android编程之LocalBroadcastManager源码详解
- [推荐算法]Pearson Correlation Similarity 的python实现
- The last packet sent successfully to the server was 0 milliseconds ago, The driver has not received
- 韩信点兵