我想在我驱动程序中是使用KeWaitForSingleObject 这个函数来等待数据,但是我希望使用一个超时,但是KeWaitForSingleObject 不可以等待一个 非零值 在 IRQL = DISPATCH_LEVEL 时,是否除了延事,我就没有别的办法了。请指教
回复(6) 2003-06-17 20:56 来自版块 - 内核编程
表情
mywdriversThank you very much.(2003-06-18 20:38)
liuyang714KeQueryTickCount, KeQuerySystemTime 之类的得到系统当前时间。 如果你一定要在 DISPACH_LEVEL 要等待超时的话,可以用 Timer 对象设定一个小的 dueTime,然后设一个循环啊。如果 < DISPACH_LEVEL ...(2003-06-18 20:29)
liuyang714KeQueryTickCount, KeQuerySystemTime 之类的得到系统当前时间。 如果你一定要在 DISPACH_LEVEL 要等待超时的话,可以用 Timer 对象设定一个小的 dueTime,然后设一个循环啊。如果 < DISPACH_LEVEL ...(2003-06-18 20:28)
mywdrivers顺便问一下,如何类似WIN32那样,使用GetTickCount来获得当前的时间值,DDK中类似的函数叫什么? KeDelayExecutionThread 这个函数只能在passive_level 运行,如果我想延时的话,我需要调用哪个函数?(2003-06-18 20:08)
mywdrivers问题是:我就是想超时,等待一会儿,不行就退呀,不需要一直等待下去的,有什么好的办法呢?(2003-06-18 19:58)
swf2003优化你程序的流程,当Timeout为NULL时 KeWaitForSingleObject 可以在 IRQL <= DISPATCH_LEVEL 等待。(2003-06-18 12:05)

返回顶部