1.阻塞,非阻塞 首先,阻塞这个词来自操作系统的线程/进程的状态模型中,如下图: 一个线程/进程经历的5个状态,创建,就绪,运行,阻塞,终止.各个状态的转换条件如上图,其中有个阻塞状态,就是说当线程中调用某个函数,需要IO请求,或者暂时得不到竞争资源的,操作系统会把该线程阻塞起来,避免浪费CPU资源,等到得到了资源,再变成就绪状态,等待CPU调度运行. 1.1.阻塞调用 阻塞调用是指调用结果返回之前,调用者会进入阻塞状态等待.只有在得到结果之后才会返回. 阻塞调用:比如 socket 的 rec