码迷,mamicode.com
首页 >  
搜索关键字:编程实践    ( 411个结果
网易云课堂-软件工程(C编码实践篇)
网易云课堂-软件工程(C编程实践篇)识别代码工程质量:代码风格;封装接口;可重用代码;可重入函数和线程安全;代码风格的原则:简明、易读、无二义性;代码风格原则在团队交流过程中非常重要。
分类:其他好文   时间:2014-12-07 23:23:23    阅读次数:181
Socket编程实践(11) --Select I/O复用
Select函数Man-Page/* According to POSIX.1-2001 */ #include /* According to earlier standards */ #include #include #include int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set...
分类:其他好文   时间:2014-12-06 21:36:28    阅读次数:269
Socket编程实践(10) --5种I/O模型
阻塞I/O  说明1:当上层应用Application1调用recv系统调用时,如果对等方没有发送数据(Linux内核缓冲区中没有数据),上层应用Application1将阻塞[默认:被Linux内核阻塞)说明2:当对等方发送了数据,Linux内核recv端缓冲区数据到达,内核会把数据copy给用户空间。然后上层应用Application1解除阻塞,执行下一步操作。 非阻塞I/O 说明1: 上层应...
分类:其他好文   时间:2014-12-06 16:53:38    阅读次数:208
Socket编程实践(9) --TCP服务器常见问题(4)
TCP/IP协议的11种状态 说明:    1.如下图(客户端与服务器都在本机:双方(server的子进程,与client)链接已经建立(ESTABLISHED),等待通信)      2.最先调用close的一端,后面会进入TIME_WAIT的状态(下图,server端首先关闭)      3.TIME_WAIT 时间是2MSL(报文的最长存活周期的2倍)       原因:(ACK y+1)如...
分类:其他好文   时间:2014-12-06 15:27:57    阅读次数:328
Socket编程实践(8)
服务端多进程避免僵尸进程的方法1)通过忽略SIGCHLD信号,解决僵尸进程    在server端代码中添加signal(SIGCHLD, SIG_IGN);2)通过wait/waitpid方法,解决僵尸进程  signal(SIGCHLD,onSignalCatch);      void onSignalCatch(int signalNumber)   {    wait(NULL);...
分类:其他好文   时间:2014-12-05 17:37:02    阅读次数:251
Socket编程实践(7)   --TCP粘包解决方法2
包尾加\n编程实践SYNOPSIS #include #include ssize_t recv(int sockfd, void *buf, size_t len, int flags);与read相比,只能用于套接字文件描述符,而且多了一个flagsFlags常用取值:MSG_OOB(紧急指针,带外数据) This flag requests r...
分类:其他好文   时间:2014-12-05 12:46:02    阅读次数:276
Socket编程实践(6) --TCP粘包原因与解决
流协议与粘包粘包的表现Host A 发送数据给 Host B; 而Host B 接收数据的方式不确定 粘包产生的原因  说明TCP字节流,无边界对等方,一次读操作,不能保证完全把消息读完UDP数据报,有边界对方接受数据包的个数是不确定的  产生粘包问题的原因分析    1、SQ_SNDBUF 套接字本身有缓冲区 (发送缓冲区、接受缓冲区)    2、tcp传送的端 mss大小限制    3、链路层...
分类:其他好文   时间:2014-12-04 21:42:38    阅读次数:365
Socket 编程实践(5) --p2p聊天程序设计与实现
一个短连接的client//短链接客户端 int main() { int loopCount = 20; char sendBuf[BUFSIZ] = {0}; char recvBuf[BUFSIZ] = {0}; for (int i = 0; i < loopCount; ++i) { sprintf(sendBuf,"Hello...
分类:其他好文   时间:2014-12-04 15:37:09    阅读次数:330
Socket编程实践(4)
Socket API 中的地址复用      服务器端尽可能使用SO_REUSEADDR,在绑定之前尽可能调用setsockopt来设置SO_REUSEADDR套接字选项。该选项可以使得不必等待TIME_WAIT状态消失就可以重启服务器.SYNOPSIS #include /* See NOTES */ #include int...
分类:其他好文   时间:2014-12-02 22:36:18    阅读次数:273
Socket编程实践(2)
Socket API基本编程模型TCP客户/服务器模型   简单echo服务器模型  Socket 基础API实践socket函数#include /* See NOTES */ #include  功能:创建一个套接字用于通信原型int socket(int domain, int type, int protocol);参数    domain:指定通信协议族(proto...
分类:其他好文   时间:2014-12-01 22:29:40    阅读次数:251
411条   上一页 1 ... 28 29 30 31 32 ... 42 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!