Les compilateurs Microsoft Visual C++ ont les objets EnterCriticalSection
et ExitCriticalSection
pour permettre la synchronisation entre threads.Que sont gcc sur l'équivalent de Linux pour les sections critiques de Microsoft?
Qu'est-ce que l'équivalent GCC?
Je vois des références autour de __sync_synchronize
avec __scoped_lock
En fait, je vois mention d'un certain nombre de fonctions atomiques __sync
avec un certain nombre de __atomic
les.
En fait j'ai utilisé __sync_fetch_and_add
pour mon incrément atomique Devrais-je utiliser __atomic_add_dispatch
à la place?
Quelle est la différence?
Lesquels dois-je utiliser? Y a-t-il des constructions en C++ que je peux utiliser dans la dernière version de GCC et Visual C++ 2010 qui sont disponibles car je vais écrire du code multiplateforme.
Je vois boost a certaines fonctions disponibles, mais pour diverses raisons, je ne suis pas autorisé à utiliser boost sous Windows.
Je suppose que vous ne pouvez pas utiliser une autre bibliothèque soit alors? Qt possède une API de threading sympa (multiplate-forme). – Job