摘要: TCP有个特性是粘包,也就是一个包后面可能跟着下一个包的部分或者全部数据,帧格式就是用来解决粘包问题的。帧格式一般都是在包的前面增加一个包头,包头里的一个字段会保存包的大小。所以基于帧的服务器的每条连接的读取数据状态机都是在“读包头”和“读包体”之间转化。 具体服务器的代码如下: public cl 阅读全文
posted @ 2020-11-12 17:38 ralgo 阅读(383) 评论(0) 推荐(0)
摘要: 异步连接需要做以下操作: 设置socket为非阻塞模式 注册OP_CONNECT事件 OP_CONNECT事件发生时,调用SocketChannel的finishConnection 代码如下: public class Client1 { Selector selector; int writeE 阅读全文
posted @ 2020-11-12 11:56 ralgo 阅读(408) 评论(0) 推荐(0)