一般在测试多并发服务器的时候需要使用多路进程访问,这时需要自己来编写测试的并发访问功能.
直接上代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
#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毫秒
}
}
|
本文转自asd1123509133 51CTO博客,原文链接:http://blog.51cto.com/lisea/1791523,如需转载请自行联系原作者