如下代码段,向管道写入信息,但是为什么count++和write()交换位置,最终运行结果没有改变?
child1 = fork();
if(child1 == 0) //子进程1
{
printf("Process1 pid %d\n",getpid());
signal(SIGINT,SIG_IGN); //屏蔽默认的SIGINT信号处理,否则直接退出。
signal(SIGUSR1,SignHandler2); //收到SIGUSR1信号,使用SigHandler2处理。
while(1){
close(filedis[0]);
sprintf(info,"I send you %d times",counter);
counter++;
write(filedis[1],info,30);
//counter++;
sleep(1);
}