您的位置:首页 > 其它

同步异步,阻塞非阻塞的概念区分

2017-05-30 11:43 363 查看
1.同步或异步是进程间协作的一种方式,二者区别在于调用后能否立即返回;阻塞与非阻塞是进程运行可能出现的状态。两者是不同维度的概念。

2.假如程序运行期间因数据交互出现阻塞,就是同步;反之。

以上两条套用在Linux的5种IO模型上:

同步类型I/O:

(1)阻塞I/O

(2)非阻塞I/O(进程自己轮询)

(3)I/O复用(基于FD轮询)

(4)信号驱动I/O(基于事件驱动)

异步类型I/O:

(5)异步I/O

这里的同步、异步是指在数据从内核空间到用户进程空间。同步方式需要调用recvFrom函数,同步等待数据从内核数据拷贝到进程空间;异步方式,通知数据报准备完毕,操作系统 把数据送到指定的用户进程空间。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  异步 数据 内核