同步、异步、阻塞、非阻塞
同步、异步、阻塞、非阻塞
同步、异步、阻塞、非阻塞一、概念介绍
1、同步
是一个服务的完成需要依赖其他服务时,只有等待被依赖的服务完成后,依赖的服务才能算完成,这是一种可靠的服务序列。
2、异步
是一个服务的完成需要依赖其他服务时,只通知其他依赖服务开始执行,而不需要等待被依赖的服务完成,此时该服务就算完成了。至于被依赖的服务最终是否真正完成,无法确定,所以它是不可靠的服务序列。
3、阻塞
阻塞调用是指调用结果返回之前,当前线程会被挂起,一直处于等待消息通知,不能够执行其他业务。函数只有在得到结果之后才会返回。
4、非阻塞
非阻塞和阻塞的概念相对应,指在不能立刻得到结果之前,该函数不会阻塞当前线程,而会立刻返回。
虽然表面上看非阻塞的方式可以明显的提高CPU的利用率,但是也带了另外一种后果就是系统的线程切换增加。
二、调用者获取依赖服务异步回调结果的方式
1、一种是主动去轮训查询异步回调的结果。
2、一种调用依赖服务时传入一个callback方法或者回调地址,依赖服务完成之后去调用callback通知调用者。
三、同步与异步消息通知方式
1、同步:当一个同步调用发出后,调用者要一直等待返回消息(或者调用结果)通知后,才能进行后续的执行。
2、异步:当一个异步过程调用发出后,调用者不能立刻得到返回消息(结果)。实际处理这个调用的部件在完成后,通过消息回调来通知调用者是否调用成功。
四、阻塞调用和同步调用的不同
对于同步调用来说,很多时候当前线程可能还是激活的,只是从逻辑上当前函数没有返回而已,此时,这个线程可能也会处理其他的消息。
五、同步非阻塞
如果这个线程在等待当前函数返回时,仍在执行其他消息处理,那这种情况就叫做同步非阻塞
六、同步阻塞
如果这个线程在等待当前函数返回时,没有执行其他消息处理,而是处于挂起等待状态,那这种情况就叫做同步阻塞
- linux时间同步ubuntu(在Ubuntu中使用NTP实现时间同步)
- win7如何搭建serv-u服务器(使用Serv-U搭建FTP服务器以及bestsync自动同步设置图文教程)
- mysql主从同步工作原理(MySQL是如何实现主备同步)
- mysql主从同步原理详解(MySQL双主主主架构配置方案)
- sqlserver存储过程同步数据(SQL Server存储过程同时返回分页结果集和总数)
- sqlserver数据库实时同步(SQL Server实时同步更新远程数据库遇到的问题小结)
- mysql深度分页问题(MySQL DDL 引发的同步延迟该如何解决)
- python多线程多种方法(详解python多线程之间的同步一)
- python协程使用教程(对Python协程之异步同步的区别详解)
- 怎样在云服务器上搭建宝塔面板(利用宝塔面板同步服务器时间的实现方法)
- ucenter安装配置(使用ucenter实现多站点同步登录的讲解)
- python如何遍历列表并提取(Python同步遍历多个列表的示例)
- linux多线程怎么设置(超详细讲解Linux C++多线程同步的方式)
- python线程池如何实现同步(Python mutiprocessing多线程池pool操作示例)
- python实现sql脚本规范(基于Python的SQL Server数据库实现对象同步轻量级)
- mysql表结构设计分享(MySql开发之自动同步表结构)
- 七夕的寓意(七夕的寓意)
- 苏志燮赵恩静结婚,韩国四大公共财产变三人,这么快就有替补了(苏志燮赵恩静结婚)
- 《内在美》后,一大波新韩剧来袭,李钟硕朴信惠宋慧乔玄彬回归(一大波新韩剧来袭)
- 给孩子选购保温杯,注意这4个步骤,比颜值更重要(给孩子选购保温杯)
- 保温好 容量大 颜值高 保温杯你给娃娃买对了吗(保温好容量大颜值高)
- 《道德经》 人生避开骄狂,才能免去祸患(道德经人生避开骄狂)
热门推荐
- 面试时自我介绍怎么说
- mysql的limit的分页使用(获取 MySQL innodb B+tree 的高度的方法)
- php标签怎么写(php 使用mpdf实现指定字段配置字体样式的方法)
- C#中ToDictionary,ToLookup
- pandas统计多行数据(pandas去重复行并分类汇总的实现方法)
- php目录使用教程学习(PHP FileSystem 文件系统常用api整理总结)
- 宝塔linux面板部署防火墙后网页打不开报http564错误的解决办法(宝塔linux面板部署防火墙后网页打不开报http564错误的解决办法)
- angular封装公共组件(详解Angular组件之生命周期二)
- nginxdjango部署(详解Django+uwsgi+Nginx上线最佳实战)
- apache和php如何配置(Apache2与PHP5 for WinXP简单配置技巧)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9