什么是同步?
同步可以理解为排队打饭,一个一个执行。
什么是阻塞?
阻塞是相对于调用者来说的,比如你去接你女朋友吃饭,你是主动去接人家,你到女朋友楼下,你得等女朋友吧,等到女朋友下来以后才能一起去吃饭吧,这就是阻塞。
什么是IO多路复用?
IO 多路复用是一种同步IO模型,实现一个线程可以监视多个文件句柄;
一旦某个文件句柄就绪,就能够通知应用程序进行相应的读写操作;
没有文件句柄就绪就会阻塞应用程序,交出CPU。
通俗点说:
就是io程序中创建的一个线程可以对多个io流进行同步读写操作,实际上在底层有一个循环访问的机制不断的循环访问是否需要对io执行读写操作,如果没有需要读写的io流,那么就交出CPU,在循环体中的某个方法把当前循环阻塞啦