|
按照楼上的做法,成功了。
但为什么在两个线程同时检测外部中断的情况下不正常运行,我也不太清楚。
我是这样的:
有一个线程检测EINT5,(EINT5与key_Interrupt_event[0]事件是关联的):
WaitForSingleObject( key_Interrupt_event[0], INFINITE);
也有一个线程检测EINT6,(EINT5与key_Interrupt_event[1]事件是关联的):
WaitForSingleObject( key_Interrupt_event[1], INFINITE);
另外还有一线程检测EINT5和EINT6,先检测EINT5,在EINT5发生的情况下再检测EINT6:
WaitForSingleObject( key_Interrupt_event[0], INFINITE);
result=WaitForSingleObject( key_Interrupt_event[1], 1000);
…………………………
InterruptDone(EINT_SYSINTR[0]);
InterruptDone(EINT_SYSINTR[1]);
为什么不行呢?是不是不能在两个线程里同时等待同一个中断?这样属于不同步? |
|