Quelle est la façon la plus propre de créer un délai d'attente pour une boucle while?

API Windows/C/C++

1. ....  
2. ....
3. ....    
4.    while (flag1 != flag2)
5.    {
6.      SleepEx(100,FALSE);   
        //waiting for flags to be equal (flags are set from another thread).
7.    }
8. .....
9. .....  

Si les indicateurs ne sont pas égaux les uns aux autres après 7 secondes, je voudrais continuer à la ligne 8.

Toute aide est appréciée. Merci.

  • Passer le délai d'attente de la fonction d'attente de votre code contiendra une fois que vous vous débarrasser de cette boucle occupée.
  • Dans un environnement intégré qui serait une combinaison de données, et de la minuterie-driven interrompre ... C / C++ sont assez bas niveau. Je me demande si vous pouvez le faire aussi.
  • Oui. Dans l'API Windows pour il est WaitForSingleObject() et amis.
  • Pour ne pas mentionner, vous n'êtes pas à l'aide de Contrefil des opérations de contrôle de ces deux champs, le résultat sera en difficulté
InformationsquelleAutor T.T.T. | 2010-01-25