阻塞非阻塞,同步异步概念

阻塞非阻塞:

  1. 请求不能立即得到应答,需要等待,那就是阻塞;
  2. 否则可以理解为非阻塞。

同步异步:

  1. 某业务需要甲乙甚至多方合作的时候,总是按照“甲方请求一次,乙方应答一次”这样的有序序列处理业务,只有当“一次请求一次应答”的过程结束才可以发生下一次的“一次请求一次应答”,那么就说他们采用的是同步。(同步IO中,对同一个描述符的操作必须是有序的)
  2. 如果甲方只要有需要,就会发送请求,不管上次请求有没有得到乙方应答。而乙方只要甲方有请求就会接受,不是等这次请求处理完毕再接受甲方新请求。这样请求应答分开的序列,就可以认为是异步。异步情况下,请求和应答不需要一致进行,可能甲方后请求的业务,却先得到乙方的应答。同步是线性的,而异步可以认为是并发的。(异步IO中,异步IO可以允许多方同时对同一个描述符发送IO请求,或者一次发多个请求,当然有机制保证如何区分这些请求,)

参考
https://www.zhihu.com/question/19732473/answer/14413599
https://www.zhihu.com/question/19732473/answer/241673170

你可能感兴趣的:(JAVA源码)