一般在测试多并发服务器的时候需要使用多路进程访问,这时需要自己来编写测试的并发访问功能.
直接上代码:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <signal.h>
#include <sys/wait.h>
//回收子进程
void wait_child(int num){
while(0 < waitpid(0, NULL, WNOHANG)){
;
}
}
int main(int argc, char* argv[]){
pid_t pid;
//注册子进程结束信号
signal(SIGCHLD, wait_child);
//循环创建进程
for(;;){
//创建进程
pid = fork();
if(0 == pid){
//调用curl 访问网站 argv[1] 用户命令行参数
execlp("curl", "curl", "-I", argv[1], NULL);
}
usleep(20); //暂停20毫秒
}
}本文出自 “sea” 博客,请务必保留此出处http://lisea.blog.51cto.com/5491873/1791523
原文:http://lisea.blog.51cto.com/5491873/1791523