|
引用 19 楼 seemknow 的回复:
引用 17 楼 xqhrs232 的回复:
难道跟中断绑定的事件不能让两个线程同时去等待?
2个线程等一个中断,怎么调度?
LZ是不是要等中断,如果等不到,就超时做其他处理?创建一个IST线程就可以了。如果处理过程很复杂或者占用其他资源之类的,再考虑创建另一个线程,在IST线程里触发个事件同步
C/C++ code
Timeout=5000;while (!IsTerminated())
{
dwWaitStatus= WaitForSingleObject(m_CableEvent, Timeout);switch(dwWaitStatus)
{case WAIT_OBJECT_0:
RETAILMSG(ZONE_INT, (TEXT("CableIST get event \r\n")));
CableDetectHandle();
InterruptDone(m_dwCableSysIntr);break;case WAIT_TIMEOUT:
RETAILMSG(ZONE_INT, (TEXT("CableIST timeout \r\n")));
CableDetectTimeoutHandle();break;default:
RETAILMSG(ZONE_INT, (TEXT("CableIST Wait object Error\r\n")));
}
}
我就是这样弄的啊,就是不行!!!! |
|