I have code that dequeues data from a queue in a while
loop which runs until the queue is empty. Sometimes when
the queue is big this affects the performance of machine -
the function is running at DISPATCH_LEVEL. I have tried
using KeQueryInterruptTime (logging start time and then
check time in the loop) to time the operation with the
intention of timing out after 1 milli-second or so.
However, I've found that unless at least 16 milli seconds
expires my start time and check time are the same!!! The
only time that KeQueryInterruptTime() returns a new time
is when at least 16 milli seconds has passed! Am I doing
something wrong? Is this the best KeQueryInterruptTime()
can do?

Re: KeQueryInterruptTime doesn't seem to work properly! by Maxim

Maxim
Sat Feb 07 21:57:23 CST 2004

> only time that KeQueryInterruptTime() returns a new time
> is when at least 16 milli seconds has passed! Am I doing
> something wrong? Is this the best KeQueryInterruptTime()
> can do?

Yes. Why not? The platform has 64 timer IRQs per second - why not?

--
Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
maxim@storagecraft.com
http://www.storagecraft.com