同步、异步、阻塞、非阻塞

同步与异步是消息通知的机制不同,同步是主动获取通知(不断观察状态),异步是被动通知(使用回调)。

阻塞与非阻塞是获取消息通知时状态。阻塞指在获取消息通知时不可做其他事情;非阻塞指在获取消息通知时可以做其他事情。

上面组合后有四种情况:

① 同步阻塞
这种效率最低,在等待消息通知时,什么事情都不做

② 同步非阻塞
这种效率较低,在做其他事情时,还要不断观测消息的状态,来回切换,效率较低。

③ 异步阻塞
在被动等待通知时,不做其他事情,与同步阻塞情况差不多。

④ 异步非阻塞
这种效率最高,在被动等待通知时,可以做其他事情。在收到通知时,才会切换回原进程/线程处理通知

参考:https://www.jianshu.com/p/aed6067eeac9

你可能感兴趣的:(操作系统)