上一页 1 ··· 65 66 67 68 69 70 71 72 73 ··· 121 下一页

2013年7月29日

UNIX网络编程——客户/服务器程序设计示范(八)

摘要: TCP预先创建线程服务器程序,主线程统一accept 最后一个使用线程的服务器程序设计示范是在程序启动阶段创建一个线程池之后只让主线程调用accept并把每个客户连接传递给池中某个可用线程。 本设计示范的问题在于主线程如何把一个已连接套接字传递... 阅读全文

posted @ 2013-07-29 17:17 疯子123 阅读(109) 评论(0) 推荐(0) 编辑

UNIX网络编程——客户/服务器程序设计示范(七)

摘要: TCP预先创建线程服务器程序,每个线程各自accept 前面讨论过预先派生一个子进程池快于为每个客户线程派生一个子进程。在支持线程的系统上,我们有理由预期在服务器启动阶段预先创建一个线程池以取代为每个客户线程创建一个线程的做法有类似的性能加速。本服务器的基本设计是预先创建一个... 阅读全文

posted @ 2013-07-29 16:46 疯子123 阅读(108) 评论(0) 推荐(0) 编辑

UNIX网络编程——客户/服务器程序设计示范(六)

摘要: TCP并发服务器程序,每个客户一个线程 前面讲述了,每个客户一个进程的服务器,或为每个客户现场fork一个子进程,或者预先派生一定数目的子进程。如果服务器主机支持线程,我们就可以改用线程以取代子进程。#include "unpthread.h"intmain(... 阅读全文

posted @ 2013-07-29 16:40 疯子123 阅读(125) 评论(0) 推荐(0) 编辑

UNIX网络编程——客户/服务器程序设计示范(五)

摘要: TCP预先派生子进程服务器程序,传递描述符 对预先派生子进程服务器程序的最后一个修改版本是只让父进程调用accept,然后把所接受的已连接套接字“传递”给某个子进程。这么做绕过了为所有子进程的accept调用提供上锁保护的可能需求,不过需要从父进程到子进程的某种... 阅读全文

posted @ 2013-07-29 16:34 疯子123 阅读(147) 评论(0) 推荐(0) 编辑

UNIX网络编程——客户/服务器程序设计示范(四)

摘要: TCP预先派生子进程服务器程序,accept使用线程上锁保护 我们使用线程上锁保护accept,因为这种方法不仅适用于同一进程内各线程之间的上锁,而且适用于不同进程之间的上锁。 为了使用线程上锁,我们的main、child_make和child_mai... 阅读全文

posted @ 2013-07-29 16:20 疯子123 阅读(137) 评论(0) 推荐(0) 编辑

UNIX网络编程——客户/服务器程序设计示范(三)

摘要: TCP预先派生子进程服务器程序,accept无上锁保护 我们的第一个“增强”型服务器程序使用称为预先派生子进程的技术。使用该技术的服务器不像传统意义的并发服务器那样为每个客户现场派生一个子进程,而是启动阶段预先派生一定数量的子进程,当各个客户连接到达时,这些子进程... 阅读全文

posted @ 2013-07-29 13:57 疯子123 阅读(120) 评论(0) 推荐(0) 编辑

UNIX网络编程——客户/服务器程序设计示范(二)

摘要: TCP并发服务器程序,每个客户一个子进程 传统上并发服务器调用fork派生一个子进程来处理每个客户。这使得服务器能够同时为多个客户服务,每个进程一个客户。客户数目的唯一限制是操作系统对以其名义运行服务器的用户ID能够同时有多个子进程的限... 阅读全文

posted @ 2013-07-29 13:38 疯子123 阅读(112) 评论(0) 推荐(0) 编辑

UNIX网络编程——客户/服务器程序设计示范(一)

摘要: 下面给出的是客户程序用于测试我们的服务器程序的各个变体。#include "unp.h"#define MAXN 16384 /* max # bytes to request from server */intmain(int argc, char **argv){ int i... 阅读全文

posted @ 2013-07-29 11:45 疯子123 阅读(122) 评论(0) 推荐(0) 编辑

UNIX网络编程——使用线程的TCP回射服务器程序

摘要: 同一进程内的所有线程除了共享全局变量外还共享:(1)进程指令;(2)大多数数据;(3) 打开的文件(即描述符);(4)信号处理函数和信号处置;(5)当前工作目录;(6)用户ID和组ID。不过每个线程有各自的:(1)线程ID;(2)寄存器集合,包括程序计数器和栈指针;(3)栈(用于存放局... 阅读全文

posted @ 2013-07-29 11:07 疯子123 阅读(129) 评论(0) 推荐(0) 编辑

2013年7月28日

UNIX网络编程——TCP—经受时延与nagle算法、滑动窗口、拥塞窗口

摘要: 1、经受时延: TCP在接收到数据时并不立即发送ACK,相反,它推迟发送,以便将ACK与需要沿该方向发送的数据一起发送,时延为200ms,超过时延范围,发送确认。 2、nagle算法: 一个TCP连接上最多只能有一个未被确认的未完成的小分组,在该分组的确认到达之前不能发送其他的小分... 阅读全文

posted @ 2013-07-28 23:07 疯子123 阅读(157) 评论(0) 推荐(0) 编辑

上一页 1 ··· 65 66 67 68 69 70 71 72 73 ··· 121 下一页

导航