io多路复用
io操作时间远远高于CPU的时间
阻塞式IO,比如socket.connect()这是一个阻塞式,后续的操作如果基于链接之后才能做的话就需要一直等待链接成功,注意这时候等待是不耗费CPU资源的
不阻塞式IO,上面说的如果connect()后面代码不需要连接成功也可以做,这是可以通过setblock(false)让connect不是一个阻塞方法,让后续的代码执行
但是后续的代码需要connect之后才能做就需要while循环一直去check connect是否链接成功,这时候就需要耗费CPU资源
所以阻塞式和非阻塞式不能明确说哪一个好,看业务而定
有没有一种,当我们数据准备或者链接好cpu在通知,这就是IO多路复用