阻塞/非阻塞
线程访问的资源没有就绪,进程的处理方式
阻塞:等待资源准备完毕,再返回响应结果
非阻塞:直接返回结果
同步/异步
访问数据的机制
- 同步:主动请求,并等待IO操作完成
- 异步:主动请求后,去执行其它任务,等待IO完成通知
案例
烧开水:普通水壶/响水壶 看着/去干其它事
同步 ==> 你得盯着看 异步 ==> 它会通知你
阻塞 ==> 你不能干别的 非阻塞 ==> 你可以干别的
- 同步 + 阻塞 :普通水壶 + 站旁边看着 等水开
同步 + 非阻塞 :普通水壶,干别的事,过一会来看一次水开没
异步 + 阻塞 :响水壶 + 站旁边,水开了水壶通知他
- 异步 + 非阻塞 :响水壶 + 干别的事,水开了水壶通知他
参考:
文档信息
- 本文作者:jiushun.cheng
- 本文链接:https://minipa.github.io/2016/07/07/thread-sync/
- 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)
