|
我写了一段代码,想通过父进程来启动一个子进程,然后子进程执行完了以后,我希望能够得到子进程的运行时间和使用的内存.代码如下:
if( (pid=fork()) ==0 ){
execv(argv[1], &argv[1]);
error("couldn't start %s",argv[1]);
}
if( ( child_pid=wait3(&status,WUNTRACED,&r_usage) ) == -1 || (status & 0177)!= 0 ))
printf("%s killed",argv[1]);
printf("the use time is%ld.%06ld\n",r_usage.ru_utime.tv_sec,r_usage.ru_utime.tv_usec);
现在我访问r_usage结构体的ru_time得到了子进程的运行,有办法可以得到它的内存吗,r_usage里面有没有这个数据?
如果用别的方法测,在wait完了以后,子进程的所有信息好像都找不到了,proc里面也没有,有什么方法可以解决测内存这个问题呢? :help
我的系统是red hat9.0 |
|