java socket 一个socket多线程收发消息和两个socket多线程一个socket负责发消息,另外一个负责收消息。这两种方式哪个效率高?另外NIO和阻塞式IO(socket)收发双工?
1 回答
拉莫斯之舞
TA贡献1820条经验 获得超10个赞
用两个线程,一发,一收,看上去挺好,实际上增加了连接数开销与程序的复杂度。很少有人这么是用。
socket 多采用 一问,一答方式,例如http 协议
发送:get /index.html
接受:html 页面内容。
所以一个连接足够了。没有必要使用2个线程。因为你发送get /index.html 的时候另一个仍然处在Sleep 状态,只有server收到get /index.html 才会发送数据。
这些交给 epoll 去处理吧,你不要操心。
添加回答
举报
0/150
提交
取消