1.同步:调用一个函数,函数没有结束前死等结果,死等结果的目的就是为了保证数据的一致性,也体现出数据的同步。
2.异步:调用一个函数,不需要等待函数的结果,执行下去,函数有结果后回调通知,此时数据可能就不同步。
3.阻塞:指线程被挂起,期间不能处理其他事情,体现在cpu占用上就是此时不占用cpu。我理解与同步的不同也提现于此,同步虽然不能执行下午,但是此时还是占用cpu,线程也是激活状态。
4.非阻塞:与阻塞相对,线程不会被挂起,可以执行下去处理其他事情。
综上可知,同步和异步,阻塞和非阻塞,有些混淆,但概念上它们完全不是一回事,而且它们修饰的对象也不相同。