同步:针对cpu利用时间,主动等待服务端返回结果。
异步:针对cpu利用时间,被动接收服务端返回结果。
阻塞:针对IO的操作,进程挂起不干别的事情。
非阻塞:针对IO的操作,进程运行可以干别的事情。
生活场景:(去照相馆照相)
1.同步阻塞(BIO):在店里什么都不干,一直等到照片洗出来。
2.同步非阻塞(NIO):可以在店里玩手机,看电视,过一会问一声老板洗好了吗,直到照片洗完。
3.异步阻塞:给老板留个电话,你去走廊长凳上睡觉(什么都不干),直到照片洗完,老板打电话通知(实际不应用)。
4.异步非阻塞(AIO):给老板留个电话,你去逛街吃饭,直到照片洗完,老板打电话通知(效率最高)。