专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
竞争的问题
2019-03-26 12:28
发布
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
站内问答
/
嵌入式Linux
6864
2
1793
我买了UNIX环境高级编程,正在看。看到第8章,竞争条件。
程序如下:
书上说,该程序输出两个字符串:一个由子进程输出,另一个由父进程输出。
因为输出依赖于内核使这两个进程运行的顺序及每个进程运行的时间长度,所以
该程序包含了一个竞争条件。
以下是我运行的结果:
第16次运行的时候产生了竞争。
此帖出自
Linux与安卓论坛
友情提示:
此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
chenbingjy
1楼-- · 2019-03-26 18:57
本帖最后由 chenbingjy 于 2016-8-8 14:36 编辑
然后,我把程序改成下面这样:
fork了两次,也就是第一个进程的子进程和第二个进程的子进程轮流打印字符。
而父进程不打印。
运行结果如下:
正常情况下先打印first child,再打印second child。可是第12次运行,先打印的second child,
再打印的first child。而第31次运行,打印顺序完全乱了。
加载中...
chenbingjy
2楼-- · 2019-03-26 22:58
最后,我把程序改成下面这样:
还是fork两次,然后父进程/第一个子进程,第二个子进程都打印。
本来我一开始试的时候,老是不出错。可是等我发帖子截图的时候,
运行到第16次,突然打印乱了。如图:
真坑啊!
加载中...
一周热门
更多
>
相关问题
相关文章
机器学习的强大:5种最佳的现实应用
0个评论
基于AM335X的物联网关解决方案
0个评论
如何编写一个工程文件夹下通用的Makefile
0个评论
设备树在Linux系统内核中的体现
0个评论
手把手创建一个小型模板Linux设备树
0个评论
Linux设备树专有名词及语法规则详解(下)
0个评论
Linux设备树专有名词及语法规则详解(上)
0个评论
什么是Linux的设备树
0个评论
×
关闭
采纳回答
向帮助了您的网友说句感谢的话吧!
非常感谢!
确 认
×
关闭
编辑标签
最多设置5个标签!
保存
关闭
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
关闭
您已邀请
15
人回答
查看邀请
擅长该话题的人
回答过该话题的人
我关注的人
然后,我把程序改成下面这样:
fork了两次,也就是第一个进程的子进程和第二个进程的子进程轮流打印字符。
而父进程不打印。
运行结果如下:
正常情况下先打印first child,再打印second child。可是第12次运行,先打印的second child,
再打印的first child。而第31次运行,打印顺序完全乱了。
还是fork两次,然后父进程/第一个子进程,第二个子进程都打印。
本来我一开始试的时候,老是不出错。可是等我发帖子截图的时候,
运行到第16次,突然打印乱了。如图:
真坑啊!
一周热门 更多>