
socket
文章平均质量分 61
drusehan
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
thttpd.Timer.c分析
分析一下 TImer.c的结构 Hash:对时间值进行Hash. 双向链表:用于Hash后的查找。 free_timers的应用:开出内存后不释放,而是用双向free_timers把它存起来,以备下回调用的时候直接使用。 此三点我认为是 Timer.c的精华所在。原创 2012-06-15 16:12:38 · 507 阅读 · 0 评论 -
thttpd源码
以下代码是添加和删除fd的代码,实现的很巧妙。 static void select_add_fd( int fd, int rw ) { if ( nselect_fds >= nfiles ) { syslog( LOG_ERR, "too many fds in select_add_fd!" ); return; }原创 2012-06-07 08:58:50 · 622 阅读 · 0 评论 -
select server 实现
以下程序代码是select非阻塞通信模式。(服务端代码,监听端口8885) 声明: 1.以下结构的添加,删除fd,用了两个数组实现,结构非常巧妙。参考thttpd的实现源码。 #include #include #include #include #include #include #include #include #include原创 2012-06-16 14:28:13 · 1016 阅读 · 0 评论 -
poll服务端程序例子
以下程序是poll服务端程序。 注意:如果是自己判断状态会有问题,现在还不清楚是哪里的问题。 #include #include #include #include #include #include #include #include #include #include #include #include原创 2012-06-17 11:57:15 · 594 阅读 · 0 评论 -
关于connect前设置非阻塞的问题
以前一直使用的网络通讯的函数都是工作在阻塞模式。在看connect实现源码时,突然想到tcp/ip的三次握手在内核如何实现的,尤其是在非阻塞模式下式,涉及到等待对端回送ack包,而本端又要立即返回,想来这种实现肯定是遵循某种规则或是将所有的相关函数组合起来。 查看一些网络通信书籍,可知果然如此。应用编程如果设置为非阻塞模式,则连接时,connect发送SYN包后立即返回-E原创 2010-02-04 15:57:00 · 2518 阅读 · 0 评论