root60931
驱动大牛
驱动大牛
  • 注册日期2002-10-25
  • 最后登录2025-03-22
  • 粉丝2
  • 关注0
  • 积分1013分
  • 威望432点
  • 贡献值0点
  • 好评度311点
  • 原创分0分
  • 专家分0分
  • 社区居民
阅读:1634回复:4

(50分)为什么ScsiPortNotification只能在HWStartIo和HWTimer中调用,在线程中完成不起作用?

楼主#
更多 发布于:2004-10-27 16:47
为什么ScsiPortNotification只能在HWStartIo和HWTimer中调用,在线程中完成不起作用?
好好学习,天天向上! root60931@gmail.com
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-10-27 17:36
how did you call ScsiPortNotification ?
ScsiPortNotification musb call twice ,one for omplete request, the other for next request.
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
root60931
驱动大牛
驱动大牛
  • 注册日期2002-10-25
  • 最后登录2025-03-22
  • 粉丝2
  • 关注0
  • 积分1013分
  • 威望432点
  • 贡献值0点
  • 好评度311点
  • 原创分0分
  • 专家分0分
  • 社区居民
板凳#
发布于:2004-10-27 19:47
我是调用了两次:
ScsiPortNotification(
RequestComplete,
pDiskExt,
pSrb);


dPrint(("SRB Completed!\n"));

ScsiPortNotification(
NextRequest,
pDiskExt,
pSrb);

可是并不起作用,过一会就ResetBus,但在StartIo和HWTimer中调用就有效,我发现StartIo和HWTimer好像在DPC历程中被调用,但我在自己的DPC历程中调用ScsiPortNotification也不起作用。

因为我在读写时要等待,所以不能在StartIo中完成请求,只能交给一个线程处理,然后在HWTimer中提交完成的请求,但这样效率太低。

各位有什么解决的办法吗??谢谢了!
好好学习,天天向上! root60931@gmail.com
root60931
驱动大牛
驱动大牛
  • 注册日期2002-10-25
  • 最后登录2025-03-22
  • 粉丝2
  • 关注0
  • 积分1013分
  • 威望432点
  • 贡献值0点
  • 好评度311点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2004-10-27 19:50
对不起,分数添错了,我会再开贴加分的, 谢谢大家了!
好好学习,天天向上! root60931@gmail.com
terrychen
驱动小牛
驱动小牛
  • 注册日期2002-04-15
  • 最后登录2014-03-13
  • 粉丝0
  • 关注0
  • 积分174分
  • 威望68点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-10-28 13:00
因为dpc,你自己call dpc有什么用,你call scsiport的dpc函数才行啊
游客

返回顶部