Los compiladores de Microsoft Visual C++ tienen los objetos EnterCriticalSection
y ExitCriticalSection
para permitir la sincronización entre subprocesos.¿Qué son gcc en el equivalente de Linux a las secciones críticas de microsoft?
¿Cuál es el equivalente de GCC?
veo referencias a alrededor __sync_synchronize
junto con __scoped_lock
De hecho veo mención de una serie de funciones atómicas __sync
junto con un número de __atomic
queridos.
En realidad he estado usando __sync_fetch_and_add
para mi incremento atómico ¿Debo estar usando __atomic_add_dispatch
en su lugar?
¿Cuál es la diferencia?
¿Cuáles debo usar? ¿Hay algunas construcciones en C++ que puedo usar tanto en la última versión de GCC como en Visual C++ 2010 que están disponibles ya que voy a escribir algún código de plataforma cruzada?
Veo que el refuerzo tiene algunas funciones disponibles, pero por diversas razones no estoy autorizado a utilizar boost bajo Windows.
supongo que no se puede usar cualquier otra biblioteca ni en ese momento? Qt tiene una bonita API de subprocesamiento (multiplataforma). – Job