竞争的问题

2019-03-26 12:28发布

我买了UNIX环境高级编程,正在看。看到第8章,竞争条件。
程序如下:
1.png
书上说,该程序输出两个字符串:一个由子进程输出,另一个由父进程输出。
因为输出依赖于内核使这两个进程运行的顺序及每个进程运行的时间长度,所以
该程序包含了一个竞争条件。
以下是我运行的结果:
2.png
第16次运行的时候产生了竞争。

此帖出自Linux与安卓论坛
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
2条回答
chenbingjy
2019-03-26 22:58
最后,我把程序改成下面这样:
6.png
还是fork两次,然后父进程/第一个子进程,第二个子进程都打印。
本来我一开始试的时候,老是不出错。可是等我发帖子截图的时候,
运行到第16次,突然打印乱了。如图:
7.png
真坑啊!

一周热门 更多>