版块
论坛
喜欢
话题
应用
搜索
登录
注册
stevphen的个人空间
访问量
0
新鲜事
帖子
资料
http://bbs3.driverdevelop.com/index.php?m=space&uid=48702
请教,关于取消Irp的怪问题
我在做一个针对网络的Filter,在处理IRP_MJ_READ时,构建一个异步读Irp下发,如果此时网络连接已经断开,那么IOCallDriver会被阻塞?如果这样,我想取消这个Irp,而IoCancelIrp也会被阻塞,请问如何处理这些阻塞?
回复
(
9
)
2007-07-20 18:00
来自版块 -
文件系统(过滤)驱动程序开发
◆
◆
表情
告诉我的粉丝
提 交
wowocock
:
阻塞在别人那里,你只能干着急,在往下CALL之前先判断下网络吧。
(2007-07-30 13:13)
回复
stevphen
:
这个问题不好解决么?
(2007-07-30 09:32)
回复
stevphen
:
大侠们,人呢,给点帮助吧!
(2007-07-26 11:32)
回复
stevphen
:
我是说阻塞在IoCallDriver(TargetDevice, Irp))里,而不是KeWaitForSingleObject。 我想当遇到网络连接异常时,取消这个IRP请求,比如,IoCallDriver之后,等待500ms,如果还没返回,我认为网络异常,而结束这次请求,现在...
(2007-07-25 16:34)
回复
devia
:
那还有什么问题?这是正常的
(2007-07-25 12:25)
回复
stevphen
:
if (STATUS_PENDING == IoCallDriver(TargetDevice, Irp)) KeWaitForSingleObject(&ntEvent, Executive, KernelMode, FALSE, NULL); 阻塞一...
(2007-07-25 10:35)
回复
stevphen
:
阻塞一段时间
(2007-07-25 10:31)
回复
devia
:
是一直阻塞退不出来,还是阻塞一段时间后能够结束等待?
(2007-07-24 15:58)
回复
stevphen
:
大侠们,人呢,给点思路吧,郁闷好久了?到底怎么回事?
(2007-07-24 14:03)
回复
stevphen
加关注
写私信
0
关注
0
粉丝
60
帖子
返回顶部