高并发原理研究和探索
2018-11-03  本文已影响0人 
阿休
详细了解同步与异步,阻塞与非阻塞。
1、同步与异步
同步与异步的重点在消息通知的方式上,也就是调用结果通知的方式。
同步:当一个同步调用发出去后,调用者要一直等待调用结果的通知后,才能进行后续的执行
异步:当一个异步调用发出去后,调用者不能立即得到调用结果的返回。
异步调用,要想获得结果,一般有两种方式:
1)主动轮询异步调用的结果;
2)被调用方通过callback来通知调用方调用结果。
2、阻塞与非阻塞
阻塞与非阻塞的重点在于进/线程等待消息时候的行为,也就是在等待消息的时候,当前进/线程是挂起状态,还是非挂起状态。
阻塞:阻塞调用在发出去后,在消息返回之前,当前进/线程会被挂起,直到有消息返回,当前进/线程才会被激活.
非阻塞:非阻塞调用在发出去后,不会阻塞当前进/线程,而会立即返回。
3、总结
通过上面的分析,我们可以得知:同步与异步,重点在于消息通知的方式;阻塞与非阻塞,重点在于等消息时候的行为。