当SetEvent返回false时,我该怎么办?

时间:2014-10-27 15:15:19

标签: multithreading winapi events sync

我正在写一个小程序,程序执行4个线程,它将执行funcA(),我用于事件对象和WaitForMultipleObject()使主线程阻塞,直到4个线程超过它们的任务,很容易知道我将在funA()中使用setEvent(),我很想知道如果SetEvent()执行失败我应该怎么做,main将始终阻塞?是否有任何方法可以避免这种情况?

P.S:我只知道当HANDLE无效时SetEvent会失败,是不是因为它失败了?

1 个答案:

答案 0 :(得分:0)

在C ++中,你可以抛出一个C ++异常来故意使进程崩溃。

在C中,您可以使用Windows API函数RaiseException很好地破坏该过程,从而引发Windows结构化异常。