亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? tcptecho.c

?? linux網絡編程實例程序 socket程序 適合初學者。
?? C
字號:
/* TCPtecho.c - main, TCPtecho, reader, writer, mstime */#include <sys/types.h>#include <sys/param.h>#include <sys/ioctl.h>#include <sys/time.h>#include <sys/socket.h>#include <unistd.h>#include <stdlib.h>#include <string.h>#include <stdio.h>extern int	errno;int	TCPtecho(fd_set *pafds, int nfds, int ccount, int hcount);int	reader(int fd, fd_set *pfdset);int	writer(int fd, fd_set *pfdset);int	errexit(const char *format, ...);int	connectTCP(const char *host, const char *service);long	mstime(unsigned long *);#define	BUFSIZE		4096		/* write buffer size		*/#define	CCOUNT		64*1024		/* default character count	*/#define	USAGE	"usage: TCPtecho [ -c count ] host1 host2...\n"char	*hname[NOFILE];			/* fd to host name mapping	*/int	rc[NOFILE], wc[NOFILE];		/* read/write character counts	*/char	buf[BUFSIZE];			/* read/write data buffer	*//*------------------------------------------------------------------------ * main - concurrent TCP client for ECHO service timing *------------------------------------------------------------------------ */intmain(int argc, char *argv[]){	int	ccount = CCOUNT;	int	i, hcount, maxfd, fd;	int	one = 1;	fd_set	afds;	hcount = 0;	maxfd = -1;	for (i=1; i<argc; ++i) {		if (strcmp(argv[i], "-c") == 0) {			if (++i < argc && (ccount = atoi(argv[i])))				continue;			errexit(USAGE);		}		/* else, a host */		fd = connectTCP(argv[i], "echo");		if (ioctl(fd, FIONBIO, (char *)&one))			errexit("can't mark socket nonblocking: %s\n",				strerror(errno));		if (fd > maxfd)			maxfd = fd;		hname[fd] = argv[i];		++hcount;		FD_SET(fd, &afds);	}	TCPtecho(&afds, maxfd+1, ccount, hcount);	exit(0);}/*------------------------------------------------------------------------ * TCPtecho - time TCP ECHO requests to multiple servers *------------------------------------------------------------------------ */intTCPtecho(fd_set *pafds, int nfds, int ccount, int hcount){	fd_set	rfds, wfds;		/* read/write fd sets		*/	fd_set	rcfds, wcfds;		/* read/write fd sets (copy)	*/	int	fd, i;	for (i=0; i<BUFSIZE; ++i)	/* echo data	*/		buf[i] = 'D';	memcpy(&rcfds, pafds, sizeof(rcfds));	memcpy(&wcfds, pafds, sizeof(wcfds));	for (fd=0; fd<nfds; ++fd)		rc[fd] = wc[fd] = ccount;	(void) mstime((unsigned long *)0);	/* set the epoch */	while (hcount) {		memcpy(&rfds, &rcfds, sizeof(rfds));		memcpy(&wfds, &wcfds, sizeof(wfds));		if (select(nfds, &rfds, &wfds, (fd_set *)0,				(struct timeval *)0) < 0)			errexit("select failed: %s\n", strerror(errno));		for (fd=0; fd<nfds; ++fd) {			if (FD_ISSET(fd, &rfds))				if (reader(fd, &rcfds) == 0)					hcount--;			if (FD_ISSET(fd, &wfds))				writer(fd, &wcfds);		}	}}/*------------------------------------------------------------------------ * reader - handle ECHO reads *------------------------------------------------------------------------ */intreader(int fd, fd_set *pfdset){	unsigned long	now;	int		cc;	cc = read(fd, buf, sizeof(buf));	if (cc < 0)		errexit("read: %s\n", strerror(errno));	if (cc == 0)		errexit("read: premature end of file\n");	rc[fd] -= cc;	if (rc[fd])		return 1;	(void) mstime(&now);	printf("%s: %d ms\n", hname[fd], now);	(void) close(fd);	FD_CLR(fd, pfdset);	return 0;}/*------------------------------------------------------------------------ * writer - handle ECHO writes *------------------------------------------------------------------------ */intwriter(int fd, fd_set *pfdset){	int	cc;	cc = write(fd, buf, MIN((int)sizeof(buf), wc[fd]));	if (cc < 0)		errexit("read: %s\n", strerror(errno));	wc[fd] -= cc;	if (wc[fd] == 0) {		(void) shutdown(fd, 1);		FD_CLR(fd, pfdset);	}}/*------------------------------------------------------------------------ * mstime - report the number of milliseconds elapsed *------------------------------------------------------------------------ */longmstime(unsigned long *pms){	static struct timeval	epoch;	struct timeval		now;	if (gettimeofday(&now, (struct timezone *)0))		errexit("gettimeofday: %s\n", strerror(errno));	if (!pms) {		epoch = now;		return 0;	}	*pms = (now.tv_sec - epoch.tv_sec) * 1000;	*pms += (now.tv_usec - epoch.tv_usec + 500)/ 1000;	return *pms;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
奇米亚洲午夜久久精品| 精品久久一二三区| 青草国产精品久久久久久| 久久精品视频在线免费观看| 色综合天天做天天爱| 亚洲成a人在线观看| 欧美精品一区二区三区四区| 欧美系列在线观看| 国产成人在线影院| 亚洲成人精品一区二区| 国产精品久久久久久久久果冻传媒| 5566中文字幕一区二区电影| 91色视频在线| 韩国女主播一区| 亚洲成人777| 亚洲综合偷拍欧美一区色| 国产日韩一级二级三级| 91精品国产91久久综合桃花| 色哟哟精品一区| 国产91富婆露脸刺激对白| 久久精品99国产精品日本| 亚洲成在线观看| 一区二区三区四区国产精品| 国产精品婷婷午夜在线观看| 久久久久久久久99精品| 精品国产91九色蝌蚪| 欧美一级欧美一级在线播放| 欧美男同性恋视频网站| 在线亚洲一区二区| 91碰在线视频| 天堂午夜影视日韩欧美一区二区| 国产精品灌醉下药二区| 久久九九久久九九| 欧美一级爆毛片| www.亚洲国产| 奇米影视一区二区三区| 国产精品黄色在线观看| 日韩三级在线观看| 99精品视频中文字幕| 国产美女久久久久| 久久99最新地址| 日本中文在线一区| 亚洲成人在线免费| 亚洲尤物在线视频观看| 综合精品久久久| 国产精品久线在线观看| 欧美一区国产二区| 欧美日韩一区二区不卡| 91久久免费观看| 成人av电影免费在线播放| 国产剧情av麻豆香蕉精品| 麻豆成人av在线| 免费在线观看成人| 亚洲一区二区偷拍精品| 一区二区三区国产| 亚洲综合丝袜美腿| 亚洲一卡二卡三卡四卡| 亚洲综合清纯丝袜自拍| 一区二区三区四区av| 一区二区三区精品| 午夜欧美在线一二页| 亚洲国产成人91porn| 亚洲综合精品自拍| 午夜精品久久一牛影视| 亚洲电影一级黄| 午夜成人免费电影| 最新热久久免费视频| 欧美国产成人精品| 中国av一区二区三区| 中文字幕中文字幕一区| 综合色天天鬼久久鬼色| 亚洲精品视频自拍| 一区二区三区在线影院| 一区二区三区在线播| 中文字幕一区二区在线观看| 中文字幕亚洲成人| 尤物在线观看一区| 亚洲成人动漫在线观看| 日韩在线一区二区三区| 看电视剧不卡顿的网站| 久久国产精品72免费观看| 国产a精品视频| 一本久久精品一区二区| 色老综合老女人久久久| 欧美日韩aaaaaa| 欧美日韩另类一区| 日韩美女在线视频| 国产精品色哟哟| 亚洲一区二区黄色| 狠狠色狠狠色综合日日91app| 国产成人精品免费一区二区| 99re视频精品| 欧美日韩国产在线观看| 欧美成人三级电影在线| 精品国产污污免费网站入口| 亚洲天堂免费看| 午夜精品爽啪视频| 久久99久久精品欧美| 99视频一区二区| 91国偷自产一区二区开放时间| 日韩欧美一级二级| 国产精品乱码一区二区三区软件| 国产视频视频一区| 亚洲卡通动漫在线| 国产另类ts人妖一区二区| 在线免费观看不卡av| 欧美精品一区二区高清在线观看| 中文字幕欧美一区| 日本最新不卡在线| 精品一区二区三区不卡| 在线观看视频一区| 久久色视频免费观看| 亚洲一二三四久久| 久久不见久久见免费视频1| 不卡视频免费播放| 日韩视频一区二区在线观看| 亚洲视频在线观看三级| 精品在线播放午夜| 91国偷自产一区二区三区成为亚洲经典| 欧美电影精品一区二区| 中文字幕亚洲综合久久菠萝蜜| 天天色综合成人网| av成人老司机| 久久综合久久综合久久| 亚洲免费观看高清| 国产在线精品不卡| 欧美日韩电影在线播放| 亚洲欧美一区二区在线观看| 精品一区二区三区免费视频| 一本一本久久a久久精品综合麻豆| 精品国免费一区二区三区| 一片黄亚洲嫩模| 国产99精品国产| 欧美一级日韩免费不卡| 亚洲第一福利视频在线| av高清不卡在线| 国产亚洲人成网站| 美女精品一区二区| 91精品办公室少妇高潮对白| 久久久久久一二三区| 久久精品99国产精品| 欧美一卡二卡三卡| 婷婷六月综合网| 在线看不卡av| 亚洲欧美偷拍三级| 不卡一二三区首页| 国产精品天美传媒沈樵| 精品中文av资源站在线观看| 久久综合色8888| 国内成人免费视频| 精品少妇一区二区三区视频免付费 | 亚洲人成网站在线| 国产成人av一区二区三区在线观看| 欧美不卡一二三| 久久99久久99精品免视看婷婷 | 国产精品欧美一级免费| 另类专区欧美蜜桃臀第一页| 欧美性生活久久| 一区二区三区四区中文字幕| 91久久国产综合久久| 亚洲高清三级视频| 欧美三级乱人伦电影| 亚洲成人精品影院| 91精品国产91综合久久蜜臀| 久久精品999| 亚洲欧美在线视频观看| 欧美系列一区二区| 天天av天天翘天天综合网色鬼国产 | 日本一区二区三区国色天香| 国产成人精品一区二区三区四区 | 国产一区二区三区在线观看精品 | 亚洲成av人**亚洲成av**| 欧美日韩国产综合一区二区三区| 亚洲一区二区三区四区五区黄| 日本大香伊一区二区三区| 亚洲午夜久久久久久久久久久| 欧美日韩一二三| 麻豆成人免费电影| 久久毛片高清国产| 成人在线视频一区| 日韩欧美一级二级三级久久久 | 国产精品一区二区在线观看网站 | 欧美亚洲日本国产| 日韩精品欧美成人高清一区二区| 欧美一区二区在线不卡| 黑人精品欧美一区二区蜜桃| 中文字幕在线免费不卡| 成人免费高清视频| 日韩av一区二区在线影视| 久久综合成人精品亚洲另类欧美 | 不卡一区二区在线| 性做久久久久久免费观看| 欧美不卡在线视频| 成人性色生活片免费看爆迷你毛片| 国产精品久久三区| 欧美日韩久久一区二区| 日日摸夜夜添夜夜添亚洲女人| 国产亚洲欧美日韩日本| 欧美日韩在线亚洲一区蜜芽| 捆绑紧缚一区二区三区视频|