此问题是先前询问的问题的延续:
Slow communication using shared memory between user mode and kernel
我正在Windows内核中运行一个线程,该线程通过共享内存与应用程序通信。我想知道当前循环和等待BOOLEAN变量更改的方法是否最有效?要求是将其降低到50-100微秒或更低。
内核代码
const id = 2;
const arr = [1,2,3];
if (arr.indexOf(id) > -1)
console.log('it exists');
我考虑过KeStallExecutionProcessor,因为它应该用于少于50微秒的循环,但是据我了解,它仍然会占用处理器的资源。
此外,由于BOOLEAN的使用方式不稳定,您是否发现当前的读写过程存在任何不足或问题? 也许将线程优先级更改为低?