进程同步与异步的概念
2012-09-13 10:18
253 查看
同步
所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。也就是必须一件一件事做,等前一件做完了才能做下一件事.就像早上起床后,先洗涮,然后才能吃饭,不能在洗涮没有完成时,就开始吃饭.按照这个定义,其实绝大多数函数都是同步调用(例如sin,isdigit等)。但是一般而言,我们在说同步、异步的时候,特指那些需要其他部件协作或者需要一定时间完成的任务。最常见的例子就是
SendMessage。该函数发送一个消息给某个窗口,在对方处理完消息之前,这个函数不返回。当对方处理完毕以后,该函数才把消息处理函数所返回的
LRESULT值返回给调用者。
异步
异步的概念和同步相对。当一个异步过程调用发出后,调用者不能立刻得到结果。实际处理这个调用的部件在完成后,通过状态、通知和回调来通知调用者。
以CAsycSocket类为例(注意,CSocket从CAsyncSocket派生,但是起功能已经由异步转化为同步),当一个客户端通过调用
Connect函数发出一个连接请求后,调用者线程立刻可以朝下运行。当连接真正建立起来以后,socket底层会发送一个消息通知该对象。
这里
提到执行部件和调用者通过三种途径返回结果:状态、通知和回调。可以使用哪一种依赖于执行部件的实现,除非执行部件提供多种选择,否则不受调用者控制。如
果执行部件用状态来通知,那么调用者就需要每隔一定时间检查一次,效率就很低(有些初学多线程编程的人,总喜欢用一个循环去检查某个变量的值,这其实是一
种很严重的错误)。如果是使用通知的方式,效率则很高,因为执行部件几乎不需要做额外的操作。至于回调函数,其实和通知没太多区别。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/a_snail/archive/2007/01/24/1491790.aspx
实际上同步就是调用模块等待一个被调用体返回后,再继续下一步。
而异步是调用模块发起调用之后,不用等待调用返回就继续下一步了。
注意了,不是同时与不同时。
所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。也就是必须一件一件事做,等前一件做完了才能做下一件事.就像早上起床后,先洗涮,然后才能吃饭,不能在洗涮没有完成时,就开始吃饭.按照这个定义,其实绝大多数函数都是同步调用(例如sin,isdigit等)。但是一般而言,我们在说同步、异步的时候,特指那些需要其他部件协作或者需要一定时间完成的任务。最常见的例子就是
SendMessage。该函数发送一个消息给某个窗口,在对方处理完消息之前,这个函数不返回。当对方处理完毕以后,该函数才把消息处理函数所返回的
LRESULT值返回给调用者。
异步
异步的概念和同步相对。当一个异步过程调用发出后,调用者不能立刻得到结果。实际处理这个调用的部件在完成后,通过状态、通知和回调来通知调用者。
以CAsycSocket类为例(注意,CSocket从CAsyncSocket派生,但是起功能已经由异步转化为同步),当一个客户端通过调用
Connect函数发出一个连接请求后,调用者线程立刻可以朝下运行。当连接真正建立起来以后,socket底层会发送一个消息通知该对象。
这里
提到执行部件和调用者通过三种途径返回结果:状态、通知和回调。可以使用哪一种依赖于执行部件的实现,除非执行部件提供多种选择,否则不受调用者控制。如
果执行部件用状态来通知,那么调用者就需要每隔一定时间检查一次,效率就很低(有些初学多线程编程的人,总喜欢用一个循环去检查某个变量的值,这其实是一
种很严重的错误)。如果是使用通知的方式,效率则很高,因为执行部件几乎不需要做额外的操作。至于回调函数,其实和通知没太多区别。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/a_snail/archive/2007/01/24/1491790.aspx
实际上同步就是调用模块等待一个被调用体返回后,再继续下一步。
而异步是调用模块发起调用之后,不用等待调用返回就继续下一步了。
注意了,不是同时与不同时。
相关文章推荐
- 进程同步及异步的概念
- 进程同步及异步的概念
- [转]进程同步及异步的概念
- 进程同步及异步的概念
- 进程同步及异步的概念
- GCD(一) ---- 进程、线程、队列、同步、异步 概念区分与使用
- 进程同步及异步的概念
- 进程同步与异步概念
- 我对进程、线程、异步、同步的理解
- 线程进程/同步异步
- 关于阻塞 非阻塞 同步 异步的概念
- 进程同步与异步
- 那些年搞不懂的多线程、同步异步及阻塞和非阻塞(二)---概念区分
- Python 中的进程、线程、协程、同步、异步、回调
- Linux高编之进程--------fork函数的同步与异步(兄弟子进程和父子孙进程示列)
- Python 中的进程、线程、协程、同步、异步、回调
- 同步与异步的概念
- 异步和同步的概念
- 操作系统的信号量 进程互斥 同步等概念
- 同步、异步、阻塞和非阻塞的概念