#include<stdlib.h>
#include<stdio.h>
int main()
{
printf("Running ps with system\n");
int code = system("ps au");//新进程结束后,system函数才返回
//int code = system("ps au");//system函数立即返回
printf("%d\n",code);
printf("ps Done\n");
exit(0);
}
int execl(const char *path,const char *arg0,...,(char*)0); int execlp(const char *file,const char *arg0,...,(char*)0); int execle(const char *path,const char *arg0,...,(char*)0,char *const envp[]); int execv(cosnt char *path,char *const argv[]); int execvp(cosnt char *file,char *const argv[]); int execve(cosnt char *path,char *const argv[],char *const envp[]);
#include<stdio.h>
int main()
{
printf("Running ps with execlp\n");
execlp("ps","ps","au",(char*)0);
printf("ps done");
exit(0);
}
#include<stdio.h>
#include<sys/types.h>
int main()
{
pid_t pid = fork();
switch(pid)
{
case -1:
perror("fork failed");
exit(1);
break;
case 0:
printf("\n");
execlp("ps","ps","au",0);
break;
default:
printf("parent,ps done\n");
break;
}
exit(0);
}
pid_t wait(int *stat_loc); pid_t waitpid(pid_t pid,int *stat_loc,int options);
#include<wait.h>
#include<stdio.h>
#include<sys/types.h>
int main()
{
pid_t pid = fork();
int stat = 0;
switch(pid)
{
case -1:
perror("fork failed");
exit(1);
break;
case 0:
printf("\n");
exit(0);
break;
default:
pid = wait(&stat);
printf("Child has finished:PID=%d\n",pid);
printf("parent,ps done\n");
break;
}
exit(0);
}
#include<wait.h>
#include<stdio.h>
#include<sys/types.h>
int main()
{
pid_t pid = fork();
int stat = 0;
switch(pid)
{
case -1:
perror("fork failed");
exit(1);
break;
case 0:
printf("\n");
execlp("ps","ps","au",0);
break;
default:
do
{
pid = waitpid(pid,&stat,WNOHANG);
if(pid==0)
{
printf("parent do something else.\n");
sleep(1);
}
}while(pid==0);
printf("Child has finished:PID=%d\n",pid);
printf("parent,ps done\n");
break;
}
exit(0);
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有