首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

有关进程,信号的有关问题,向各位求教。

2012-02-28 
有关进程,信号的问题,向各位大虾求教。。。C/C++ codepid_t pidvoid handle(int signo){ /*****************

有关进程,信号的问题,向各位大虾求教。。。

C/C++ code
pid_t pid;void handle(int signo){ /*****************************问题所在********************************  *多执行几次pid会出现不同的结果0,或者子进程的pid *一个是fork返回到子进程的值,一个是返回到父进程的值  *问题:这个地方的pid不应该是子进程的pid值么,为什么可能为0呢???  *请各位指教。***********************************************************************/        printf("Current time:%d\n",pid);             kill(pid,SIGUSR1);}int main(){;    int i;    int stat;    signal(SIGCLD,SIG_IGN);    signal(SIGUSR1,SIG_IGN);        signal(SIGUSR2,handle);    pid=fork();    if(pid<0){        perror("fork");        exit(-1);    }    else if(pid==0){        kill(ppid,SIGUSR2);        pause();        exit(0);    }        wait(&stat);    return 0;}


[解决办法]
*问题:这个地方的pid不应该是子进程的pid值么,为什么可能为0呢???
在子进程里就是pid就是0
[解决办法]
kill(ppid,SIGUSR2);你的ppid在哪定义的?


[解决办法]
才发现,在你的上个贴子里我把问题搞清楚了,就是写时复制的问题。嘿嘿~
[解决办法]
不知所以然 mark~~~

热点排行