#include

亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

隨記一個C的毫秒級群PING

系統 1990 0

?

正好公司為了檢測前臺網絡,力圖收集有力證據與某CDN PK,所以隨手寫了一個群PING的程序。

寫的內容比較簡單,沒有去特別追求線程效率,也沒有去用LINUX 2.6+的殿堂級神器,以追求實現效率為主,一些參數大家可以自己調。

同事后來幫忙補了些日志處理,當然如果有興趣的,還可以直接與AS3做SOCKET展示。

大致的源碼如下:

#Linux REHL 6,x64,4C/32G,GCC

#define MAXTD 2

#include <stdio.h>
#include <string.h>
#include <pthread.h>
#include <stdlib.h>


char IP[230][30];
char *PINGI=NULL;
char *PINGC=NULL;
char *PINGS=NULL;

void *dmlog();


int main(int argc,char *argv[])
{
FILE *fp=NULL;
char *tmpstr=NULL;
char *ipraw;

pthread_t dm[230];
pthread_attr_t attr={0};
int t=0;

if(argc!=4)
{
printf("Not Enough Parameters!,GoodBye Exit(0)!\n");
printf("Or you can try example below:\n");
printf("ping 1 5 300 \n");
printf("Just 1 mens interval\n");
printf("5 means 5 packets\n");
printf("300 menas 300 packet size\n");
exit(0);
}
printf("%s\n",argv[1]);
printf("%s\n",argv[2]);
printf("%s\n",argv[3]);

fp=fopen("./ping.cnf", "r");
PINGI=(char*)malloc(sizeof(char)*10);
PINGC=(char*)malloc(sizeof(char)*2);
PINGS=(char*)malloc(sizeof(char)*10);
tmpstr=(char*)malloc(sizeof(char)*30);
ipraw=(char*)malloc(sizeof(char)*30);

strcpy(PINGI,argv[1]);
strcpy(PINGC,argv[2]);
strcpy(PINGS,argv[3]);

pthread_attr_init (&attr);
pthread_attr_setscope (&attr, PTHREAD_SCOPE_SYSTEM);
pthread_attr_setdetachstate (&attr, PTHREAD_CREATE_DETACHED);

printf("Here Start Ping Test\n");
printf("Create Thread\n\n\n");

while(fgets(tmpstr,100,fp)!=NULL)
{
sscanf(tmpstr,"%[^\n]",ipraw);
if(strlen(ipraw)!=0)
{
strcpy(IP[t],ipraw);
pthread_create(&dm[t],NULL,(void*)dmlog,(void*)t);
printf("fun:%s,%d,%d,%s\n",ipraw,t,strlen(ipraw),IP[t]);
t++;
}
}

printf("Create Thread Done!\n");


while(1)
{
sleep(8);
printf("I've finished my job ,I wanna go...\n");
exit(0);
}

close(fp);
free(tmpstr);
free(ipraw);
free(PINGI);
free(PINGC);
free(PINGS);

}

void *dmlog(int ag)
{
char *text=NULL;
text=(char *)malloc(sizeof(char)*200);
strcpy(text,"ping -w 6 -i ");
strcat(text,PINGI);
strcat(text," -c ");
strcat(text,PINGC);
strcat(text," -s ");
strcat(text,PINGS);
strcat(text," ");
strcat(text,IP[ag]);
strcat(text," |tee ./logs/");
strcat(text,IP[ag]);
strcat(text,".log");
//printf("PID:%d,THID:%lu,TEXT:%s,ARG:%s\n",getpid(),(unsigned int)pthread_self(),text,IP[ag]);
//printf("%s\n",text);
system(text);
free(text);

}

?

隨記一個C的毫秒級群PING


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 四虎1515| 久久99热久久精品23 | 97色97色97色成人 | 国语高清精品一区二区三区 | 久操综合在线 | 中文日韩字幕一区在线观看 | 在线操| 精品资源在线 | 久久久婷婷 | 久久久综合久久 | 欧美毛片一级 | 中文字幕日韩专区 | 久久精品国产精品亚洲艾 | 玖玖在线国产精品 | 久热免费在线观看 | 一本一道波多野结衣一区二区 | 四虎影视在线看免费观看 | 国产福利网站 | 亚洲人和日本人jzz护士 | 亚洲一区二区三区高清 不卡 | 色婷婷在线观看视频 | 久久久久日韩精品无 | 久久综合五月 | 国产福利专区精品视频 | 天堂一区二区在线观看 | 天天怕夜夜怕狠狠怕 | 欧美曰韩一区二区三区 | 中文字幕 二区 三区 搜查官 | 岛国精品在线观看 | 2020亚洲欧美日韩在线观看 | 青草福利在线 | 国产最新在线视频 | 国产九九热视频 | 亚洲精品无人区一区二区三区 | 一区中文字幕 | 香蕉在线观看999 | 99久久免费精品高清特色大片 | 国产精品永久免费自在线观看 | 国产精品第九页 | 中日韩欧美在线观看 | 四虎国产精品永久在线 |