码迷,mamicode.com
首页 > 其他好文 > 详细

网络编程6(IO)

时间:2017-11-18 20:58:59      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:.so   多路复用   .com   span   内核空间   color   实时   stream   对象   

IO

http://www.cnblogs.com/yuanchenqi/articles/6755717.html

IO模型

1 阻塞IO:全程阻塞


2 非阻塞IO:

        发送多次系统调用;优点:wait for data时无阻塞

        缺点:1 系统调用太多 2 数据不是实时接受的
        
        两个阶段:wait for data:非阻塞
        
                  copy data   :阻塞
           
3 IO多路复用(监听多个连接)

sock::sock <socket.socket fd=224, 
family=AddressFamily.AF_INET, 
type=SocketKind.SOCK_STREAM, 
proto=0, laddr=(127.0.0.1, 8800)>

对于文件描述符(套接字对象):

1 是一个非零整数,不会变

2 收发数据的时候,对于接收端而言,数据先到内核空间,
然后copy到用户空间,同时,内核空间数据清除。


特点:1 全程(wait for data,copy)阻塞
      2 能监听多个文件描述符
      
      实现并发
       
4 异步IO

  全程无阻塞


5 驱动信号

总结: 

同步:  阻塞IO  非阻塞IO  io多路复用
异步:  异步IO

 

网络编程6(IO)

标签:.so   多路复用   .com   span   内核空间   color   实时   stream   对象   

原文地址:http://www.cnblogs.com/wanchenxi/p/7857803.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!