Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Descrive un filtro di sincronizzazione che usa un mutex per controllare l'accesso a un oggetto della cache condiviso da tutti gli allocatori.
Sintassi
template <class Cache>
class sync_shared
Parametri
Cache
Tipo di cache associato al filtro di sincronizzazione. Può essere cache_chunklist, cache_freelist o cache_suballoc.
Funzioni membro
| Funzione membro | Descrizione |
|---|---|
| stanziare | Alloca un blocco di memoria. |
| Deallocare | Libera un numero specificato di oggetti dall'archiviazione iniziando da una posizione specificata. |
| uguale | Confronta due cache per stabilirne l'uguaglianza. |
Requisiti
Intestazione:<allocatori>
Spazio dei nomi: stdext
sync_shared::allocate
Alloca un blocco di memoria.
void *allocate(std::size_t count);
Parametri
contare
Numero di elementi della matrice da allocare.
Valore restituito
Puntatore all'oggetto allocato.
Osservazioni:
La funzione membro blocca il mutex, chiama cache.allocate(count), sblocca il mutex e restituisce il risultato della precedente chiamata a cache.allocate(count).
cache rappresenta l'oggetto cache corrente.
sync_shared::d eallocate
Libera un numero specificato di oggetti dall'archiviazione iniziando da una posizione specificata.
void deallocate(void* ptr, std::size_t count);
Parametri
ptr
Puntatore al primo oggetto da deallocare dall'archivio.
contare
Numero di oggetti da deallocare dall'archivio.
Osservazioni:
La funzione membro blocca il mutex, chiama cache.deallocate(ptr, count), dove cache rappresenta l'oggetto cache, e quindi sblocca il mutex.
sync_shared::equals
Confronta due cache per stabilirne l'uguaglianza.
bool equals(const sync_shared<Cache>& Other) const;
Parametri
Cache
Tipo di cache associato al filtro di sincronizzazione.
Altro
Cache da confrontare per verificarne l'uguaglianza.
Valore restituito
true se il risultato di cache.equals(Other.cache), dove cache rappresenta l'oggetto cache, è true; in caso contrario, false.