美文网首页
IO多路复用的作用

IO多路复用的作用

作者: 多喝烫水_ | 来源:发表于2019-07-10 16:55 被阅读0次

    1、阻塞 I/O 只能阻塞一个 I/O 操作,而 I/O 复用模型能够阻塞多个 I/O 操作,所以才叫做多路复用

    2、采用epoll模型时创建了一个共享的内存空间,操作系统采用事件通知的方式,使一个进程能同时等待多个文件描述符

    3、这样就可以同时监听多个网络连接 IO, 相对于多进程、多线程切换的开销问题,IO 多路复用可以极大的提升系统效率。

    为什么客户端先调close(),而服务器不能先调?

    1、因为先调close()的一方最终要等2分钟之后才能释放资源,这段期间是不允许用bind的方式重新绑定端口的,就会出现端口被占用的情况

    2、而客户端的端口是操作系统随机分配的,被占用之后会再分配一个

    3、若服务端先调,则需要设定套接字选项,配置重复利用端口资源才可以

    相关文章

      网友评论

          本文标题:IO多路复用的作用

          本文链接:https://www.haomeiwen.com/subject/xaahkctx.html