阅读:1110回复:8
同步问题!!!
VxD驱动有一个事件可以在应用层和核心层之间进行同步;
WDM驱动有没有相似的方式??? Example: 为伪码 ////////////////////// 应用层: DWORD WINAPI ThreadProc(PVOID p) { WaitForSingle(hEvent,INFINITE); } ////////////////////// 核心层: { ... SetEvent(hEvent); ... } |
|
沙发#
发布于:2002-11-25 16:27
用户被禁言,该主题自动屏蔽! |
|
板凳#
发布于:2002-11-25 16:38
用KeWaitForSingleObject或KeWaitForMultipleObjects试试
|
|
|
地板#
发布于:2002-11-25 16:50
当然。 老兄,很久没有见你出来活动了,你都怎么了? |
|
|
地下室#
发布于:2002-11-26 09:34
ydyuse大侠的方式很好一定试试非常感谢,望莫隐退江湖。
|
|
5楼#
发布于:2002-11-26 17:17
ydyuse大侠的方式很好一定试试非常感谢,望莫隐退江湖。 呵呵,都不放点分? |
|
|
6楼#
发布于:2002-11-27 10:36
我都以为您已经是\"顶级会员\"了,给不给分都无所为.很抱歉!
不过,我没试成功,我的同步问题可能没说清楚. VxD驱动以下方式可以;我寻求WDM下相似的方式,麻烦您再支招。 因为我现在是启动一个线程不断地DeviceIoControl去查询驱动标记,我觉得这样比较浪费CPU资源。 Example: ///////////应用层/////////////// void main() { ... HANDLE hThread=CreateThread(NULL,0,ThreadProc,NULL); ... } DWORD ThreadProc(PVOID p) { WaitForSingleObject(hEvent,INFINITE); ..... } //////////////核心层//////////////////////////// void KernerlProc() { .... SetEvent(hEvent); .... } |
|
7楼#
发布于:2002-11-27 11:28
当然有的。
你可以在本站下载Walter Oney的那本经典的书的配套光盘,在其中的chap9里有一个用事件来同步的例子叫evwait。 有了例子就很容易懂了 |
|
|
8楼#
发布于:2002-11-28 11:45
我怎么给不了分,提示我\"你不是此贴的起贴人或已经给分\"!!!
|
|