BIO: BIO是阻塞IO,体现在一个线程调用IO的时候,会挂起等待,然后Thread会进入blocked状态:这样线程资源就会被闲置,造成资源浪费,通常一个系统线程数是有限的,而且,Thread进入内核态也是很大的性能开销.而阻塞方式,意味着BIO必然是一个同步IO. BIO还有一个显著的特点是面向流式Stream编程,特点是实现简单,但也意味着拓展性差. NIO: NIO,通常实现为同步非阻塞IO,同步意味着不会产生会调,需要线程自身去同步IO是否完成,而非阻塞就是线程会立刻返回. 相对于B