Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Describe un filtro de sincronización que usa una exclusión mutua para controlar el acceso a un objeto de caché compartido por todos los asignadores.
Sintaxis
template <class Cache>
class sync_shared
Parámetros
Caché
El tipo de caché asociado al filtro de sincronización. Puede ser cache_chunklist, cache_freelist o cache_suballoc.
Funciones miembro
| Función de miembro | Descripción |
|---|---|
| asignar | Asigna un bloque de memoria. |
| desasignar | Libera un número especificado de objetos del almacenamiento, a partir de la posición especificada. |
| es igual a | Compara dos cachés para determinar si son iguales. |
Requisitos
Encabezado:<allocators>
Espacio de nombres: stdext
sync_shared::allocate
Asigna un bloque de memoria.
void *allocate(std::size_t count);
Parámetros
contar
El número de elementos de la matriz que se van a asignar.
Valor devuelto
Un puntero al objeto asignado.
Comentarios
La función miembro bloquea la exclusión mutua, llama a cache.allocate(count), desbloquea la exclusión mutua y devuelve el resultado de la llamada anterior a cache.allocate(count).
cache representa el objeto de caché actual.
sync_shared::d eallocate
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
ptr
Un puntero al primer objeto que se va a desasignar del almacenamiento.
contar
El número de objetos que se van a desasignar del almacenamiento.
Comentarios
Esta función miembro bloquea la exclusión mutua, llama a cache.deallocate(ptr, count), donde cache representa el objeto de caché y, después, desbloquea la exclusión mutua.
sync_shared::equals
Compara dos cachés para determinar si son iguales.
bool equals(const sync_shared<Cache>& Other) const;
Parámetros
Caché
El tipo de caché asociado al filtro de sincronización.
Otros
La caché para comparar la igualdad.
Valor devuelto
true si el resultado de cache.equals(Other.cache), donde cache representa el objeto de caché, en true. De lo contrario, es false.