
io
文章平均质量分 50
syf_wfl
java
展开
-
(NIO编程)Netty框架学习
BIO(传统的阻塞型):每次连接都会开一个线程,但是这个连接不做任何事情的话会造成不必要的线程开销。jdk1.4之前唯一的选择。加入线程池机制改善(多个客户端连接服务器)。NIO(同步非阻塞):一个线程处理多个请求,轮询到连接有IO请求上去处理,节省线程开销。适用于连接数目多且连接比较短。jdk1.4开始支持。AIO(异步非阻塞)。连接数目多且连接比较长。...原创 2021-09-30 08:58:00 · 151 阅读 · 0 评论 -
java发送byte类型的0x80之类最高为为1的数据、socket中tcp建立连接,io流对建立的数组过大有很多多余部分问题 的解决
1、java通过socket的io流发送byte类型数据,类似0x80之类(最高位为1),因为java中的byte有符号,所以范围为-128~127,如果直接将0x80赋值给byte类型的变量,会直接报错,需要强转,就变成了负的128,最开始我以为这是个大问题,因为不能发送正值过去,但发现只要对方定义的是无符号类型,其实并没有影响。2、用java写的服务器通过tcp和客户端建立连接时,如果需要一直和客户端连接在一起,可以用一个while循环,但是需要将阻塞设置在while循环外,否则每次循环到这时都会重复原创 2021-04-19 22:52:40 · 767 阅读 · 0 评论 -
java中Socket使用io流的一些问题验证
1、发送端发送过来的数据,我就算当前只读了一部分,但是只要还是在循环体while(true)内循环读,就能继续把剩下的部分读出来。2、和发送端的通道建立后,在发送端不发送数据时,接收端会阻塞在read处,当有数据进来就会继续往下执行。3、通信时不能在while里面写几个read,因为read会阻塞,所以如果想要几个read(既想做接收端也想做发送端),就需开线程处理。...原创 2021-05-26 11:44:31 · 245 阅读 · 0 评论