En utilisant Win32 objets événement
-
09-10-2019 - |
Question
Noob question:
Ce lien montre un exemple de CreateEvent et CreateThread
http://msdn.microsoft.com /en-us/library/ms686915(v=vs.85).aspx
Ma question est de savoir si le ThreadProc est pas thread vraiment sûr?
Plus précisément, la variable dwWaitResult. Étant donné que toutes les discussions sont en attente sur le même événement, il se trouve ce code fonctionne mais différents événements été créé, par exemple, cela ne fonctionne pas correctement?
La solution
La variable dwWaitResult
est une variable locale dans cette fonction. Ainsi, chaque thread individuel a sa propre copie, ce qui assure que la variable est thread-safe. Chaque thread a sa propre pile, donc de toutes les variables locales sont spécifiques au thread individuel.
Autres conseils
L'événement est créé par nom, donc si l'événement est déjà créé est réutilisé dans un autre thread « créer » un événement avec le même nom. En conséquence, le code exemple thread-safe.