异步AIO这块疑问
来源:8-4 服务器端实现(第二回合)

慕码人3264447
2019-12-09
异步AIO这块,Sever端调用了accept以后,为啥需要在while里面,调用Accept会触发服务器底层什么操作呢?同时为什么在handler里面还需要调用accept,不是已经在while循环中调用了一次么
写回答
1回答
-
kaluroro
2019-12-16
我的理解,不一定对。 accept之后,线程就会一直阻塞在system.in.read()这里。加个while(ture)循环是为了防止万一阻塞解除了还是回到accept,而不至于执行finnaly里的close。 所以accept完成后,在它的complitionhandle里,还需要再来一个accept,服务器才可以接受下一个连接请求。 如果accept只调用一次就只能接受一个连接请求。00
相似问题