
网络编程
文章平均质量分 78
penzo
这个作者很懒,什么都没留下…
展开
-
epoll函数
epoll的几个函数的介绍。1、epoll_create函数/** * @brief 该函数生成一个epoll专用的文件描述符。它其实是在内核申请一空间,用来存放你想关注的socket fd上是否发生以及发生了什么事件。 * * @param size size就是你在这个epoll fd上能关注的最大socket fd数 * * @return 生成的文件描述符 */int epoll_create(int size); 2、epoll_ctl函转载 2010-11-04 10:16:00 · 1886 阅读 · 0 评论 -
Linux下同步模式、异步模式、阻塞调用、非阻塞调用总结
同步和异步:与消息的通知机制有关。本质区别现实例子同步模式由处理消息者自己去等待消息是否被触发我去银行办理业务,选择排队等,排到头了就办理。异步模式由触发机制来通知处理消息者我去银行办理业务,取一个小纸条上面有我的号码,等到排到我这一号时由柜台的人通知我轮到我去办理业务。阻塞与非阻塞:与线程等待消息(无所谓同步或者异步)时的状态有关。本质区别现实例子阻塞调用线程挂起,不能做其他事。上面的那个例子,不论是排队还是使用号码等待通知,如果在这个等待的过程中,等待者除了等待消息之外不能做其它的事情,那么该机制就是阻原创 2010-11-08 17:27:00 · 5594 阅读 · 2 评论 -
网络编程中wait与waitpid的区别
<br />问题: <br /> 一个unp中第五章的例子:有5个客户端几乎同时向服务器发送终止连接,这时在服务器端将几乎同时产生SIGCHILD信号,然而信号在内核中是不排队的,信号处理函数只执行一次(我的理解是5个信号几乎同时到达,当第一个信号被处理时,其他4个信号是未决的,当信号处理函数处理完第一个到达的信号后,由于没有产生信号,信号处理函数将不会被再次调用)。那么在目前情况下,父进程怎样才能捕获到所有的子进程的退出状态呢?<br /> <br />分析:<br /> 在SIGCHLD原创 2010-11-10 22:03:00 · 907 阅读 · 0 评论 -
select函数的例子
<br />服务器端:<br />#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <errno.h>#include <string.h>#include <sys/types.h>#include <sys/socket.h>#include <netinet/in.h>#include <arpa/inet.h>#define MYPORT 1234 // the port u原创 2010-11-10 21:06:00 · 480 阅读 · 0 评论