changys
驱动小牛
驱动小牛
  • 注册日期2004-11-15
  • 最后登录2008-08-21
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望15点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
阅读:1571回复:3

为什么说用全局变量和局部静态变量是不好的,而用extension就是好的呢?

楼主#
更多 发布于:2005-01-16 12:03
为什么说用全局变量和局部静态变量是不好的, 不好在哪里?
而用extension就是好的呢 , 好在哪里?

体会不出来,觉得都会面对同样的同步 问题啊?
liwashington
驱动小牛
驱动小牛
  • 注册日期2004-04-30
  • 最后登录2010-10-21
  • 粉丝0
  • 关注0
  • 积分-11分
  • 威望98点
  • 贡献值1点
  • 好评度12点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-01-16 13:05
因为驱动程序必须是可重入的,所以除了只读数据之外从不分配全局变量。否则,一个线程尝试存储数据到的全局变量,与另一个线程的读写将可能是同一个数据。

当然,驱动程序的局部静态变量同样糟糕。驱动程序的状态信息必须存储在其它的地方,例如像以前介绍的设备Extension。

---------------------------------------
这是书上说的,看能不能帮你。
其实我也挺疑惑的,因为我看到的好多例子都使用的全局说量的方法。
我只想有个好老婆,每天有几顿好饭吃……
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2005-01-16 13:17
因为驱动程序必须是可重入的,所以除了只读数据之外从不分配全局变量。否则,一个线程尝试存储数据到的全局变量,与另一个线程的读写将可能是同一个数据。

当然,驱动程序的局部静态变量同样糟糕。驱动程序的状态信息必须存储在其它的地方,例如像以前介绍的设备Extension。

---------------------------------------
这是书上说的,看能不能帮你。
其实我也挺疑惑的,因为我看到的好多例子都使用的全局说量的方法。

说得是
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
idaxsy
驱动大牛
驱动大牛
  • 注册日期2004-12-09
  • 最后登录2006-03-17
  • 粉丝0
  • 关注0
  • 积分386分
  • 威望54点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
地板#
发布于:2005-01-17 10:54
也不光重入,不重入,也有个线程同步问题。
[b]万水千山总是情,回个帖子行不行?[/b]
游客

返回顶部