![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
网络编程
文章平均质量分 53
庄生晓梦93
见代码如见人
展开
-
BIO,NIO,AIO之NIO
上篇文章说过了BIO,这章我们就来聊一聊BIO。 NIO的N指的是new(也称新IO)。 由于BIO的很多操作如等待客户端连接,获取客户端IO数据等都是阻塞的。传统的输入流、输出流都是阻塞式的。且都是通过字节的移动来处理的,也就是说,面向流的输入输出系统一次只能处理一个字节,所以通常效率不高。 Jdk1.4开始,java提供了改进的IO,被统称为新IO(NewIO->nio)在java.nio下: Channel(通道)和Buffer(缓冲)selector(多路复用器)是NIO的重要对象:原创 2021-04-30 14:31:27 · 88 阅读 · 0 评论 -
BIO,NIO,AIO之BIO
面试时一个高频问题就是bio,nio与aio,今天我们就来聊一聊BIO。 BIO是同步阻塞IO,b指的是block(阻塞) 最常见的就是网络编程入门练手的聊天室功能实现: 在服务端起一个ServerSocket,并调用ServerSocket的accept方法等待客户端连接(这里的accept方法是阻塞的,没有客户端连接过来会一直阻塞线程)。 在客户端起一个socket与服务端建立连接后服务端会从阻塞状态唤醒,服务端程序可以继续运行。 服务端获取了一个客户端的连接后可以拿到与客户端的通道,客户端服原创 2021-04-29 20:20:14 · 97 阅读 · 0 评论