同步异步|阻塞非阻塞

来源:互联网 发布:漫步者音响推荐知乎 编辑:程序博客网 时间:2024/06/06 00:41

同步异步

同步: A监控B异步: B通知A

阻塞非阻塞

阻塞: B没有好,A等待非阻塞: B没有好,A不等

同步阻塞

同一个任务,A完成了他的任务内容, 但B没有完成, A啥都不做,等待B完成之后, A知道B完成, 任务完成.(场景栗子: 去食堂吃饭, 我要了份红烧肉打包, 然后等待食堂阿姨打包好给我, 这时候我啥都不做, 当阿姨把肉给我之后,我继续去选别的菜或者结账)

同步非阻塞

同一个任务,A完成了他的任务内容, 但B没有完成, 于是A去嗨皮了,过段时间A回来看下,B有没有完成,如果有就下班,没有A继续嗨皮, 如此循环. (场景栗子: 去食堂吃饭, 我要了份红烧肉打包, 然后我就去结账了(同时阿姨开始打包红烧肉),当我结完帐,回来询问红烧肉有没有打包好, 如果打包好了, 这就结束, 如果没有打包好, 那我就去买盒烟, 买完烟回来, 继续询问有没有打包好, 没有就再去做别的事情, 如果有就结束)

异步阻塞

同一个任务,A完成了他的任务内容, A做自己的事, 直到B去通知A, B任务完成了, A就暂停自己的事, 去交付任务, 任务结束后继续自己的事. (场景栗子: 去食堂吃饭, 我要了份红烧肉打包, 然后我就去做我的事情了: 比如打游戏, 直到阿姨通知我红烧肉打包好了, 我暂停打游戏, 去拿红烧肉, 拿完红烧肉, 我就继续玩游戏)

异步非阻塞

同一个任务,A完成了他的任务内容, A不管B有没有结束, 都去做自己的事了. B完成之后, 就自己交付任务啦.(场景栗子: 去食堂吃饭, 我要了份红烧肉打包, 然后我就去做我的事情了: 比如打游戏, 阿姨把红烧肉打包好了送到我手里, 我继续打游戏…)

0 0
原创粉丝点击