区分同步、异步、阻塞、非阻塞
2015-12-21 18:30
477 查看
很多人(包括我自己)都没有区分这两组概念,但分清楚这两组概念非常重要,在看别人的文章中提及到这些概念的时候就区分不清楚了,导致无法理解文章,我也是在在看了如下这篇文章才有所理解(地址:http://blog.chinaunix.net/uid-26000296-id-3754118.html),讲得很透彻。
这两组概念的关注点不一样:同步、异步关注“消息通知的时机”;而阻塞、非阻塞的关注点在于“程序等待消息时的状态”;
消息通知的时机:状态、回调、通知。
程序等待消息时的状态:一直等到调用返回就是阻塞,而只要一调用立即就返回,就是非阻塞
这两组概念的关注点不一样:同步、异步关注“消息通知的时机”;而阻塞、非阻塞的关注点在于“程序等待消息时的状态”;
消息通知的时机:状态、回调、通知。
程序等待消息时的状态:一直等到调用返回就是阻塞,而只要一调用立即就返回,就是非阻塞
相关文章推荐
- 使用 Syncthing 在多个设备间同步文件
- C#实现多线程的同步方法实例分析
- ruby实现的一个异步文件下载HttpServer实例
- C#异步绑定数据实现方法
- Oracle阻塞(blockingblocked)实例详解
- 科学知识:同步、异步、阻塞和非阻塞区别
- 同步文件备份工具 Super Flexible File Synchronizer Pro v4
- 探讨Ajax中同步与异步之间的区别
- SQL2008中SQL应用之-阻塞(Blocking)应用分析
- C#线程同步的三类情景分析
- C#中异步回调函数用法实例
- Oracle 阻塞(blocking blocked)介绍和实例演示
- C++使用CriticalSection实现线程同步实例
- 利用sys.sysprocesses检查SqlServer的阻塞和死锁
- C#实现异步GET的方法
- 基于C#实现的多生产者多消费者同步问题实例
- 异步编程需要“意识” 推荐
- 从小小题目逐步走进 JavaScript 异步调用
- 从不用 try-catch 实现的 async/await 语法说错误处理