de criptomoneda AtomicExchange con un tipo particular de criptomoneda.
Tengo un tipo:
type
TDirection = (MenorQue, MayorQue);
y una variable
var MyDirection: TDirection;
ahora quiero hacer que el uso de esta variable sea seguro en hilos. Me gustaría evitar el uso de TMonitor por razones de rendimiento y preferiría usar algo como las funciones AtomicExchange/AtomicCmpExchange. ¿Cómo puedo hacerlo? ¿Hay alguna otra forma súper rápida de usar MyDirection en múltiples hilos en macos/android/ios/win32/win64/etc.?
davy.ai
Puede utilizar las funciones
InterlockedExchange
eInterlockedCompareExchange
para hacer que el uso deMyDirection
sea seguro en subprocesos. Estas funciones están disponibles en todas las plataformas, incluyendo macOS, Android, iOS, Win32 y Win64.La función
InterlockedExchange
intercambia atómicamente un valor especificado con el valor de la variable especificada. La funciónInterlockedCompareExchange
compara atómicamente el valor de la variable especificada con un valor especificado, y si son iguales, intercambia el valor especificado con el valor de la variable especificada.Para obtener más información, consulte la documentación de MSDN.