Novedades de sincronización
Windows incluye los siguientes nuevos elementos de programación para la sincronización.
Windows 8
Funciones nuevas
-
Elimina una barrera de sincronización.
-
Hace que el subproceso de llamada espere a una barrera de sincronización hasta que el número máximo de subprocesos haya entrado en la barrera.
-
Recupera los resultados de una operación superpuesta en el archivo especificado, la canalización con nombre o el dispositivo de comunicaciones dentro del intervalo de tiempo de espera especificado. El subproceso de llamada puede realizar una espera alertable.
-
Especifica el número máximo de subprocesos y recuento de número de giros para una nueva barrera de sincronización.
-
Espera a que cambie el valor en la dirección especificada.
-
Activa todos los subprocesos que están esperando el valor de una dirección para cambiar.
-
Activa un subproceso que espera el valor de una dirección para cambiar.
Nuevas funciones interbloqueadas
-
Realiza una operación de suma atómica en los valores LONG especificados. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Realiza una operación de suma atómica en los valores LONGLONG especificados. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Realiza una operación AND atómica en los valores LONG especificados. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Realiza una operación AND atómica en los valores char especificados. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Realiza una operación AND atómica en los valores SHORT especificados. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Realiza una operación AND atómica en los valores LONGLONG especificados. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Comprueba el bit especificado del valor LONG64 especificado y lo complementa. La operación es atómica.
-
Comprueba el bit especificado del valor LONG especificado y lo establece en 0. La operación es atómica y se realiza con la semántica de ordenación de memoria.
-
Comprueba el bit especificado del valor LONG especificado y lo establece en 0. La operación es atómica y se realiza mediante la semántica de liberación de memoria.
-
Comprueba el bit especificado del valor LONG especificado y lo establece en 1. La operación es atómica y se realiza con la semántica de ordenación de memoria.
-
Comprueba el bit especificado del valor LONG especificado y lo establece en 1. La operación es atómica y se realiza con semántica de ordenación de memoria de liberación.
-
Realiza una operación atómica de comparación e intercambio en los valores especificados. La función compara dos valores de 32 bits especificados e intercambia con otro valor de 32 bits en función del resultado de la comparación. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Realiza una operación atómica de comparación e intercambio en los valores especificados. La función compara dos valores de 16 bits especificados e intercambia con otro valor de 16 bits en función del resultado de la comparación.
-
Realiza una operación atómica de comparación e intercambio en los valores especificados. La función compara dos valores de 16 bits especificados e intercambia con otro valor de 16 bits en función del resultado de la comparación. La operación se realiza con la semántica de ordenación de memoria.
-
Realiza una operación atómica de comparación e intercambio en los valores especificados. La función compara dos valores de 16 bits especificados e intercambia con otro valor de 16 bits en función del resultado de la comparación. El intercambio se realiza con la semántica de ordenación de memoria de liberación.
-
Realiza una operación atómica de comparación e intercambio en los valores especificados. La función compara dos valores de 16 bits especificados e intercambia con otro valor de 16 bits en función del resultado de la comparación. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Realiza una operación atómica de comparación e intercambio en los valores especificados. La función compara dos valores de 64 bits especificados e intercambia con otro valor de 64 bits en función del resultado de la comparación. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Realiza una operación atómica de comparación e intercambio en los valores especificados. La función compara dos valores de 128 bits especificados e intercambia con otro valor de 128 bits en función del resultado de la comparación.
-
Realiza una operación atómica de comparación e intercambio en los valores especificados. La función compara dos valores de puntero especificados e intercambia con otro valor de puntero en función del resultado de la comparación. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Disminuye (disminuye en uno) el valor de la variable de 32 bits especificada como una operación atómica. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Disminuye (disminuye en uno) el valor de la variable de 16 bits especificada como una operación atómica.
-
Disminuye (disminuye en uno) el valor de la variable de 16 bits especificada como una operación atómica. La operación se realiza con la semántica de ordenación de memoria.
-
Disminuye (disminuye en uno) el valor de la variable de 16 bits especificada como una operación atómica. La operación se realiza con la semántica de ordenación de memoria de liberación.
-
Disminuye (disminuye en uno) el valor de la variable de 16 bits especificada como una operación atómica. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Disminuye (disminuye en uno) el valor de la variable de 64 bits especificada como una operación atómica. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Establece una variable de 64 bits en el valor especificado como una operación atómica. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Establece una variable de 8 bits en el valor especificado como una operación atómica.
-
Establece una variable de 16 bits en el valor especificado como una operación atómica. La operación se realiza mediante la semántica de ordenación de memoria.
-
Establece una variable de 16 bits en el valor especificado como una operación atómica. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Establece una variable de 64 bits en el valor especificado como una operación atómica. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Intercambia de forma atómica un par de direcciones. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Realiza una adición atómica de dos valores de 32 bits. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Realiza una adición atómica de dos valores de 64 bits. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Incrementa (aumenta en uno) el valor de la variable de 32 bits especificada como una operación atómica. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Incrementa (aumenta en uno) el valor de la variable de 16 bits especificada como una operación atómica.
-
Incrementa (aumenta en uno) el valor de la variable de 16 bits especificada como una operación atómica. La operación se realiza mediante la semántica de ordenación de memoria.
-
Incrementa (aumenta en uno) el valor de la variable de 16 bits especificada como una operación atómica. La operación se realiza mediante la semántica de ordenación de memoria de versión.
-
Incrementa (aumenta en uno) el valor de la variable de 16 bits especificada como una operación atómica. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Incrementa (aumenta en uno) el valor de la variable de 64 bits especificada como una operación atómica. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Realiza una operación OR atómica en los valores LONG especificados. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Realiza una operación OR atómica en los valores char especificados. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Realiza una operación OR atómica en los valores SHORT especificados. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Realiza una operación OR atómica en los valores LONGLONG especificados. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Inserta una lista vinculada de forma singly en la parte delantera de otra lista vinculada de forma singly. El acceso a las listas se sincroniza en un sistema multiprocesador. Esta versión del método no usa la convención de llamada de __fastcall .
-
Realiza una operación XOR atómica en los valores LONG especificados. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Realiza una operación XOR atómica en los valores char especificados. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Realiza una operación XOR atómica en los valores SHORT especificados. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
-
Realiza una operación XOR atómica en los valores LONGLONG especificados. La operación se realiza de forma atómica, pero sin usar barreras de memoria.
Windows 7
Funciones nuevas
-
Activa el temporizador de espera especificado y proporciona información de contexto para el temporizador.
-
Intenta adquirir un bloqueo delgado de lector/escritor (SRW) en modo exclusivo. Si la llamada se realiza correctamente, el subproceso que realiza la llamada toma propiedad del bloqueo.
-
Intenta adquirir un bloqueo delgado de lector/escritor (SRW) en modo compartido. Si la llamada se realiza correctamente, el subproceso que realiza la llamada toma propiedad del bloqueo.
Nuevas estructuras
-
Contiene información de contexto para un temporizador activado con SetWaitableTimerEx.