Domanda

Ho un sacco di serrature di spin nel mio codice multithread e la maggior parte del tempo sono in attesa per altri thread per fare il lavoro e masticare un sacco di utilizzo della CPU in tal modo. In Linux che uso normalmente pthread_cond_wait e pthread_cond_signal per mettere in pausa un filo e sveglio quando segnalato. C'è qualcosa di simile nelle librerie Boost? Avere un rapido sguardo ho potuto trovare qualsiasi cosa.

Visual Studio 2005

È stato utile?

Altri suggerimenti

Siete alla ricerca di un mutex o di un semaforo. La libreria Boost non ha Mutex e il supporto semaforo .

un mutex è un semaforo binario, che è semplicemente pensato come una serratura, consentendo solo un filo di passare attraverso il tuo sezione critica .

semafori può aiutare a semplificare alcune situazioni in cui un blocco (Mutex) è troppo restrittiva.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top