linux服务器编程之同步异步
发布日期:2022-02-17 02:39:58
浏览次数:27
分类:技术文章
本文共 505 字,大约阅读时间需要 1 分钟。
linux服务器编程下同步和异步的概念和操作系统中的同步和异步概念有些不同;
在操作系统概念中,同步是指两个及两个以上的线程以某种既定的顺序向前推进执行的过程,异步是指操作系统在某种调度算法下让多个线程以一种不确定的顺序执行的过程。(以上是我自己的理解,如有错误还请大佬指出)
在linux IO 模型中,同步和异步要结合进程(应用程序)和内核来理解。同步是指应用程序发出IO请求后,缓冲区中没有数据到达或缓冲区已满暂时无法发送数据,应用程序只能被阻塞,等待数据到达或将数据发出去之后才能进一步的执行下一步的代码;异步是指应用程序在发出IO请求之后就可以执行下一步代码,此过程不会被阻塞,数据的具体读写过程交由内核进程操作,内核在完成IO操作之后通知应用程序,应用程序即可得到相应的结果。
并发编程:分为多进程编程和多线程编程;
并发模式:并发编程在服务器编程中的一种特指,指IO处理单元与逻辑处理单元协调完成任务的方法(特指IO单元与逻辑单元之间的并发)。并发模式中的同步异步与IO模型中不同。在并发模式中,同步指程序按照代码顺序执行,异步指程序执行由系统事件(中断、信号)来驱动。(被其他事件打断后再执行)转载地址:https://blog.csdn.net/qq_39815320/article/details/109012088 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
能坚持,总会有不一样的收获!
[***.219.124.196]2024年04月07日 03时00分30秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
【计算机操作系统】设备管理?磁盘结构是怎么样的?磁盘调度算法有哪些?
2019-04-26
【多线程高并发】为什么要使用多线程?创建多少个线程合适呢?
2019-04-26
【多线程与高并发】 Java两个线程轮流打印1-100两个数?多线程轮流打印数字?
2019-04-26
【多线程与高并发】 Java两个线程轮流打印字符串?
2019-04-26
【Linux命令篇】Linux命令实践
2019-04-26
【Leetcode单调队列】Leetcode239 滑动窗口最大值
2019-04-26
【Leetcode-单调栈】单调栈相关的题目-下一个更大的元素I 每日温度
2019-04-26
【Leetcode单调队列】- 洛谷P1714切蛋糕
2019-04-26
【Leetcode优先级队列】- 数据流的中位数
2019-04-26
【Leetcode优先级队列】-合并K个升序链表
2019-04-26
【多线程与高并发】-Java如何实现一个阻塞队列呢?
2019-04-26
【多线程高并发】-多线程实现数组的读与写
2019-04-26
【Java设计者模式】-Java实现订阅-发布者模式
2019-04-26
【计算机操作系统】-什么是系统调用呢?什么是用户态?什么是内核态?
2019-04-26
【计算机操作系统-进程管理】-进程通信是什么呢?
2019-04-26
Python程序元素分析
2019-04-26
TurtleArt美景图
2019-04-26
margin布局
2019-04-26