1、父辈比子辈多一辈,所以父进程的pid为1,子进程的pid为0
2、sleep(1)的作用是在子进程尝试使用sem_p()获取信号量之前引入1秒的延迟。这个延迟给父进程足够的时间将字符串写入文件并使用sem_v()释放信号量。如果没有这个延迟,存在子进程在父进程写入文件之前执行的可能性(主要是为了限制进程的不可预测性,您细品),导致子进程读取到空字符串或不完整的字符串。通过引入延迟,确保了父进程和子进程之间的正确同步。
1、父辈比子辈多一辈,所以父进程的pid为1,子进程的pid为0
2、sleep(1)的作用是在子进程尝试使用sem_p()获取信号量之前引入1秒的延迟。这个延迟给父进程足够的时间将字符串写入文件并使用sem_v()释放信号量。如果没有这个延迟,存在子进程在父进程写入文件之前执行的可能性(主要是为了限制进程的不可预测性,您细品),导致子进程读取到空字符串或不完整的字符串。通过引入延迟,确保了父进程和子进程之间的正确同步。