waitpid传入参数

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 #include<unistd.h>
 4 int main()
 5 {
 6     pid_t pid,pr;
 7     pid =fork();
 8     int status;
 9     if(pid<0)
10     {
11         printf("Fork failed!\n");
12         exit(1);
13     }
14     else if(pid==0)
15     {
16         printf("This child process with pid of %d.\n",getpid());
17         exit(3);
18     }
19     else
20     {
21         do{
22             pr=waitpid(pid,&status,WNOHANG);//如果子进程没有结束,那么父进程中的pr=0l;如果子进程结束,那么父进程中的pr值等于子进程的pid
23             if(pr==0)
24             {
25                 printf("No child exited!\n");
26                 sleep(1);
27             }
28         }while(pr==0);
29
30         if(pr==pid)
31         {
32
33             if(WIFEXITED(status))
34             {
35                 printf("The child process success %d\n%d\n",pr,WEXITSTATUS(status));
36             }
37             else
38             {
39                 printf("ERROR!\n");
40             }
41         }
42         else
43         {
44             printf("Error!\n");
45         }
46
47     return 0;
48     }
49
50 }

程序运行结果:
1 No child exited!
2 This child process with pid of 7333.
3 The child process success 7333
4 3
时间: 2024-12-26 02:47:50

waitpid传入参数的相关文章

[python]关于函数传入参数

在传入参数时有两个特殊参数,*args,**kwargs,功能如下: def foo(*args, **kwargs): print 'args = ', args print 'kwargs = ', kwargs print '---------------------------------------' if __name__ == '__main__': foo(1,2,3,4) foo(a=1,b=2,c=3) foo(1,2,3,4, a=1,b=2,c=3) foo('a', 1

Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件

本文通过Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件,代码如下: import java.io.File; import java.io.IOException; import java.io.InputStreamReader; import java.io.LineNumberReader; import java.util.HashMap; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import

执行脚本传入参数

执行脚本传入参数具体用在什么地方?

善用异常拒绝不合格的传入参数和其他

这两天在写个Java程序,工作上用到的,工作中有这样一个工作情景,即需要对大量的尺寸相同的手机截图修改状态栏,让状态栏变干净,变成更像一个用户的手机界面,而不是测试build+测试手机下的各种开发状态下的app提示(). 会有相应的团队给我们提供完美的一个标准语言下的图,状态栏已经修改好了,我们需要把这个状态栏应用到我们的n多手机截图上去,如果不写程序的话,这却是是个细心的体力活,用Windows 7自带的Paint工具来做…… 周末用Java写完了这个程序,只需传入待修改的众多手机截图所在的文

web接入层 传入参数的格式化及web返回值传出数据的参数格式化,都要统一

1.web接入层 传入参数的格式化及web返回值传出数据的参数格式化,都要统一. 比如acSpace中, 传入层参数@RequestBody javaBean对象.统一转换为javabean传入参数. 返回值,统一返回ResultObject对象,resultObject实现了序列化.且resultObject中定义好了传输回去哪些属性, 3.ResultObject,定义的公共传出参数属性 public class ResultObject implements Serializable {

main函数传入参数

最近几天在写一个模仿windows自带的ping程序,也从网上找过一些源码,但大都需要向主函数main中传入参数,这里简单总结一下向主函数中传参的方法. 方法一:项目->属性->调试->命令行参数输入参数 这个方法比较适合调程序时使用 方法二:运行->cmd->转到程序所在路径->程序名.exe 参数->回车 版权声明:本文为博主原创文章,未经博主允许不得转载.

三、MyBatis系列:Mapper 映射 之 使用POJO实体来接收数据和传入参数

1.首先定义一个接收数据的实体 User 类型,还有一个输入参数的 UserQuery 类型. 1 public class User { 2 public int id; 3 public String username; 4 public Date birthday; 5 public String sex; 6 public String address; 7 } 8 public class UserQuery { 9 private String orderByClause; 10 p

python脚本程序,传入参数*要用单引号&#39;*&#39;

*号作为python脚本的传入参数时,必须用单引号'',才能正确传入.如python test.py 2014 '*' age python test.py 2014 * age是错误的. 比如 test.py脚本如下 import sys hdfs_report_historical_year = sys.argv[1] # eg:2014-05,2014-12,etc. hdfs_report_historical_month = sys.argv[2] # eg:all,region,ci

Mybatis传入参数为map

Mapper: List<AdPayConfigEntity> selectByAdType(@Param("status") Integer... status); XML:<select id="selectByAdType" parameterType="map" resultMap="BaseResultMap"> SELECT * from sky_ad_pay_config WHERE ad