今天我们来进行架构探险:从零开始写分布式服务框架,你能学会吗?(11)
◎同步: 所谓同步 , 就是在发出一个功能调用时 , 在没有得到结果之前 , 该调用就不返回 。
◎异步: 异步的概念和同步相对 。 当一个异步过程调用发出后 , 调用者不会立刻得到结果 , 通过回调等措施来处理这个调用 。
Linux下实现了5种I/O模型 。
(1)阻塞I/O模型:默认情况下 , 所有的文件操作都是阻塞的 。 在进程空间中调用reevfrom , 其系统调用直到数据包到达且被复制到应用进程的缓冲区中或者发生错误才返回 , 在此期间会一直等待 , 进程在从调用rec/from开始到它返回的整段时间内都是被阻塞的 , 如图6-1所示 。
阻塞I/O模型
(2)非阻塞I/O 模型:进程把一个套接口设置成非阻塞是在通知内核 。 当所请求的I/O操作不能满足要求的时候 , 不把本进程投入睡眠 , 而是返回一个错误 。 也就是说当数据没有到达时并不等待 , 而是以一个错误返回 , 如图6-2所示 。
推荐阅读
- lpl|不着急“武统”,可不是因为不敢:恰恰证明我们是更强势的一方
- |冰雪传奇:平民玩家四转后如何打金
- 电子竞技|世界赛结束了,细说那些年我们追过的电竞小说
- 明日之后|明日之后“人尸大战”展现中国精神:人类的未来我们共同争取
- lpl|LPL给Jankos发奖状:为了表达谢意,我们制作了这个奖状
- team solomid|TSM老板透露比尔森离队真因:他想组队的选手我们买不到
- 亚运会|亚运会将拉开帷幕,我们的LPL有几分胜算?LCK徐秀是否出战?
- 不义联盟2|TES苏沫前女友骚操作,差点成就AG,网友怒吼:我们要看电竞春晚
- 徐晃|三国杀:徐家帮派帮徐家,徐盛脸上笑哈哈
- 三国杀|三国杀:希望我们有赤诚的喜欢和无限的浪漫,像三国杀的原画那样