同步和异步
1. 同步和异步关注的是消息通信机制。
同步:调用者在发出一个调用后,需要等待调用返回才能继续操作。
异步:调用者在发出一个调用后直接返回,但是没有返回结果。当这个调用完成后,一般通过状态、通知来通知调用者,或通过回调函数处理这个调用。
2. 阻塞和非阻塞关注的是程序在等待调用结果(消息,返回值)时的状态。
阻塞:调用结果返回之前,当前线程会被挂起。
非阻塞:在不能立刻得到结果之前,该调用不会阻塞当前线程。
3. 并发和并行
并发:有多个进程在一个CPU上运行,但任意时刻只有一个进程在运行。
并行:有多个进程在多个CPU上同时运行。