关于全局变量,临界区~~

[复制链接]
 楼主| ericyang001 发表于 2011-11-24 20:45 | 显示全部楼层 |阅读模式
一个全局变量在主循环和中断里都可能会被赋值,那么它算是临界区里的资源么- -?
即使不算临界区,但是在主循环里如果要改变其值,应该是要先关中断的吧?
 楼主| ericyang001 发表于 2011-11-24 20:47 | 显示全部楼层
不好意思,前两天发过类似的贴了=。。=
HWM 发表于 2011-11-24 22:34 | 显示全部楼层
自然是关中断了,这就像是加了把锁。临界区冲突的解决方法通常是加锁(可用信号灯),在此由于关中断是现成且最方便的锁,自然就首先考虑用它了。

评分

参与人数 1威望 +1 收起 理由
highgear + 1

查看全部评分

lishutong 发表于 2011-11-25 08:21 | 显示全部楼层
算的,加上关开中断,避免突然中断打断主循环的赋值
原野之狼 发表于 2011-11-25 08:32 | 显示全部楼层
不具有原子操作特性的共享资源应该用锁来保护,但是对于简单的资源(比如单字节或者32机器下的多字节)其天然就具有原子特性,因此也就不用保护了。
yewuyi 发表于 2011-11-25 08:43 | 显示全部楼层
http://bbs.21ic.com/viewthread.p ... p;page=1#pid2005107

在这个帖子中已经回答过了哦,怎么又问呢?
heqiaosheng 发表于 2015-11-22 12:34 | 显示全部楼层
mark.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

43

帖子

1

粉丝

4

主题

43

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部