Noob问题:
此链接显示了CreateEvent和CreateThread
的示例http://msdn.microsoft.com/en-us/library/ms686915(v=vs.85).aspx
我的问题是ThreadProc是否真的是线程安全的?
具体来说,是dwWaitResult变量。由于所有线程都在等待同一事件,事实证明这个代码有效,但是创建了不同的事件,例如,这不正确吗?
答案 0 :(得分:3)
dwWaitResult
变量是该函数中的局部变量。因此,每个单独的线程都有自己的副本,这可以确保变量是线程安全的。每个线程都有自己的堆栈,因此所有局部变量都是特定于各个线程的。
答案 1 :(得分:0)
事件是按名称创建的,因此如果已创建事件,则会在“创建”具有相同名称的事件的任何其他线程中重复使用该事件。因此,示例代码是IS线程安全的。