KeDelayExecutionThread问题
WIN7下编写了一HID驱动,在EvtIoInternalDeviceControl派遣函数中通过PsCreateSystemThread创建了一系统线程,此线程负责每10ms处理一下数据,但通过KeDelayExecutionThread进行延时处理时,KeDelayExecutionThread延时的时间偶尔是正确的10ms,偶尔却一直是15ms,求达人解释为什么会出现此现象,如何解决此问题?谢谢.
KeQuerySystemTime(&start);
timeOut.QuadPart = TIME_OUT;(TIME_OUT为(-10*10000))
status = KeDelayExecutionThread(KernelMode,FALSE,&timeOut);
KeQuerySystemTime(&end);
KdPrint(("Need Time = %d\n",(end.QuadPart - start.QuadPart)/10000));
打印出来的Need Time偶尔一直是10ms,偶尔一直是15ms.