摘要: 阅读全文
posted @ 2019-07-11 15:50 突突兔 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 一、网络编程中close的弊端 1、close把描述符的引用计数减1,仅在该计数为0时才关闭套接字。(使用shutdown函数可以在不管引用计数的情况下就激发TCP的正常连接终止序列) 2、close终止读写两个方向的数据传输。既然TCP连接是全双工的,有时候我们需要告知对端我们已经完成了数据传输, 阅读全文
posted @ 2019-07-11 14:56 突突兔 阅读(282) 评论(0) 推荐(0) 编辑
摘要: 一、I/O模型 1、阻塞式I/O模型: 2、非阻塞式I/O模型 3、I/O复用模型 4、信号驱动式I/O模型 5、异步I/O 信号驱动式I/O和异步I/O之间的区别是:信号驱动式I/O是由内核通知何时可以启动I/O操作,而异步I/O是由内核通知I/O操作何时完成。 二、同步I/O与异步I/O 同步I 阅读全文
posted @ 2019-07-11 11:55 突突兔 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 注:该文转载自https://blog.csdn.net/zpznba/article/details/90763798 bind 函数如何选择绑定地址 我们知道bind函数一般用在服务器代码中: struct sockaddr_in bindaddr; bindaddr.sin_family = 阅读全文
posted @ 2019-07-10 14:05 突突兔 阅读(7070) 评论(0) 推荐(0) 编辑
摘要: 在TCP客户和服务器彼此可以通信之前,每一端都应指定连接的套接字对;本地IP地址、本地端口号、外地IP地址、外地端口号。如下图: 外地IP地址和外地端口号必须在客户调用connect时指定。而两个本地值通常都由内核作为connect的一部分来选定。客户也可以在connect之前,通过调用bind来指 阅读全文
posted @ 2019-07-10 11:28 突突兔 阅读(332) 评论(0) 推荐(0) 编辑