本帖最后由 冷漠 于 2010-1-7 09:45 编辑
请教62楼版主,lxyppc 网友的代码使用了互斥吗?互斥是由于2个函数使用了同一共享资源mCount 而引发的竞争才使用的机制,是能避免就避免的。且不说mCount 这个变量有什么用,是不是在push( )和pop( )2个函数中都不可避免地要用到?即使是都要用到,那么“变量的赋值和引用越近越好,变量的跨度和生存时间越小越好。”这是使用变量的基本规则吧?
我能够在本函数内部利用已知条件求得局部变量 mCount,我为什么要把自己的“攻击窗口”扩大到另一个函数?!
只有在迫不得已的情况下才不得不存在攻击窗口。41楼认为无法利用已知条件求得mCount ,所以不得不设立了大跨度、长存活时间的攻击窗口。那么 lxyppc 怎么就能利用函数内部已知条件求得 mCount ?特别是Keil 也是这么做的。——能够缩小变量作用域,取决于程序员的“智力上的可管理性。”(而不是“方便性”)
我是没有观点的人,我不会比 keil 或者 lxyppc 还高明。
lxyppc 能想到环形缓冲器这一特点,绝对不是简单的人。( 所以我说所长自己还没整明白呢。不是因为我比谁高明,是因为我悟了一年才悟出lxyppc ,才看出所长的程序概念局限在哪。)
下面看 Keil 怎么写的: |