sync_shared (Clase)

 

Publicado: octubre de 2016

Para obtener la documentación más reciente de Visual Studio 2017 RC, consulte Documentación de Visual Studio 2017 RC.

Describe una filtro de sincronización que utiliza una exclusión mutua para controlar el acceso a un objeto de caché compartida por todos los asignadores.

template <class Cache>  
class sync_shared

Parámetros

ParámetroDescripción
CacheEl tipo de caché asociado al filtro de sincronización. Esto puede ser cache_chunklist, cache_freelist, o cache_suballoc.

Funciones miembro

asignarAsigna un bloque de memoria.
desasignarLibera un número especificado de objetos del almacenamiento, a partir de la posición especificada.
equalsCompara dos cachés para determinar si son iguales.

Encabezado:<>>

Espacio de nombres: stdext

Asigna un bloque de memoria.

void *allocate(std::size_t count);

Parámetros

ParámetroDescripción
countEl número de elementos de la matriz que se va a asignar.

Valor devuelto

Un puntero al objeto asignado.

Comentarios

La función miembro bloquea la exclusión mutua, llamadas cache.allocate(count), desbloquea la exclusión mutua y devuelve el resultado de la llamada anterior a cache.allocate(count). cacherepresenta el objeto actual de la memoria caché.

Libera un número especificado de objetos del almacenamiento, a partir de la posición especificada.

void deallocate(void* ptr, std::size_t count);

Parámetros

ParámetroDescripción
ptrUn puntero al primer objeto cancelar la asignación de almacenamiento.
countEl número de objetos que se va a cancelar la asignación de almacenamiento.

Comentarios

Esta función miembro bloquea la exclusión mutua, llamadas cache.deallocate(ptr, count), donde cache representa el objeto de caché y, a continuación, se desbloquea la exclusión mutua.

Compara dos cachés para determinar si son iguales.

bool equals(const sync_shared<Cache>& Other) const;

Parámetros

ParámetroDescripción
CacheEl tipo de caché asociado al filtro de sincronización.
OtherLa memoria caché para comparar la igualdad.

Valor devuelto

trueSi el resultado de cache.equals(Other.cache), donde cache representa el objeto de caché, se true; en caso contrario, false.

Comentarios

<>>

Mostrar: