Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Popisuje synchronizační filtr , který používá mutex k řízení přístupu k objektu mezipaměti, který je sdílen všemi alokátory.
Syntaxe
template <class Cache>
class sync_shared
Parametry
Mezipaměť
Typ mezipaměti přidružené k synchronizačnímu filtru. Může to být cache_chunklist, cache_freelistnebo cache_suballoc.
Členské funkce
| Členová funkce | Popis |
|---|---|
| přidělit | Přidělí blok paměti. |
| uvolnit | Uvolní zadaný počet objektů od úložiště počínaje zadanou pozicí. |
| se rovná | Porovná dvě mezipaměti pro rovnost. |
Požadavky
Záhlaví:<alokátory>
Obor názvů: stdext
sync_shared::přidělení
Přidělí blok paměti.
void *allocate(std::size_t count);
Parametry
počet
Počet prvků v poli, které se mají přidělit.
Návratová hodnota
Ukazatel na přidělený objekt.
Poznámky
Členské funkce uzamkne mutex, volání cache.allocate(count), odemkne mutex a vrátí výsledek předchozího volání cache.allocate(count).
cache představuje aktuální objekt mezipaměti.
sync_shared::d eallocate
Uvolní zadaný počet objektů od úložiště počínaje zadanou pozicí.
void deallocate(void* ptr, std::size_t count);
Parametry
ptr
Ukazatel na první objekt, který se má uvolnit z úložiště.
počet
Počet objektů, které se mají uvolnit z úložiště.
Poznámky
Tato členová funkce uzamkne mutex, volání cache.deallocate(ptr, count), kde cache představuje objekt mezipaměti a pak odemkne mutex.
sync_shared::equals
Porovná dvě mezipaměti pro rovnost.
bool equals(const sync_shared<Cache>& Other) const;
Parametry
Mezipaměť
Typ mezipaměti přidružené k synchronizačnímu filtru.
Další
Mezipaměť, která se má porovnat s rovností.
Návratová hodnota
truepokud výsledek , kde cache.equals(Other.cache) představuje objekt mezipaměti, je cache; v opačném případě , true.false