Question

J'ai beaucoup de serrures de spin dans mon code multithread et la plupart du temps, ils sont en attente d'autres threads pour faire un travail et donc mâcher beaucoup d'utilisation cpu. Dans linux j'utilise normalement pthread_cond_wait et pthread_cond_signal pour mettre en pause un fil et se réveiller au signal. Y at-il quelque chose comme ça dans les bibliothèques Boost? Avoir un rapide coup d'oeil je ne pourrais pas trouver quelque chose.

Visual Studio 2005

Était-ce utile?

Autres conseils

Vous cherchez un Mutex ou un Sémaphore. La bibliothèque Boost ne Mutex et le soutien de Sémaphore.

A Mutex est un binaire Sémaphore, qui est tout simplement considéré comme un verrou, ce qui permet un seul thread de passer par votre section critique .

sémaphores peut aider à simplifier certaines situations où un verrou (Mutex) est trop restrictive.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top