异步
异步表明事情相互独立地发生,除非有强加的依赖性。生活也是异步的。这里的依赖性是大自然补充的,彼此互不相干的事情能够同时发生。
异步带来的最大复杂性就是如果你没有同时执行多个活动,那么异步就没有任何优势,如果你开始了一个异步活动,然后什么也不做就等他结束的话,那么你并没有从异步这里获得任何好处。
并发
并发的意思是指事情同时放生。并发是指实际上可能串行发生的事情好像同时发生一样。并发描述了单处理器系统中线程或进程的行为特点。在POSIX中,并发的定义要求“延迟调用线程的函数不应该导致其他线程的无限期延迟”。并发操作之间可能任意交错,导致程序相互独立地运行(一个程序不必等到另一个结束后才开始运行),但是并发不代表操作同时进行。然而,并发让程序能够利用异步的优点,在无关操作运行的过程中继续工作。
并行
并行指并发序列同时执行,换言之,软件中的并行和日常语言中的并发是相同的意思,而区别于软件中的并发。并行的补充含义是指事情在相同的方向独立进行(没有交错)。
真正的并行只能在多处理器系统中存在,但是并发可以在但处理器系统和多处理器系统中都存在,并发能够在但处理器系统中存在是因为并发实际上是并行的假象。并行要求程序能够同时执行多个操作,而并发只要求程序能够假装同时执行多个操作。
原文地址:http://blog.csdn.net/wdkirchhoff/article/details/45971691