共用方式為


sync_shared 類別

描述的同步處理篩選會使用 mutex 來控制對所有配置器所共用之快取物件的存取。

語法

template <class Cache>
class sync_shared

參數

Cache
與同步處理篩選相關聯的快取類型。 它可以是 cache_chunklistcache_freelistcache_suballoc

成員函式

成員函數 描述
allocate 配置記憶體區塊。
deallocate 從指定位置起算的儲存體中,釋放指定數目的物件。
equals 比較兩個快取是否相等。

需求

Header: < allocators>

命名空間: stdext

sync_shared::allocate

配置記憶體區塊。

void *allocate(std::size_t count);

參數

計數
要配置的陣列元素數目。

傳回值

所配置物件的指標。

備註

成員函式會鎖定 mutex、呼叫 cache.allocate(count)、解除鎖定 mutex,然後傳回之前呼叫 cache.allocate(count) 的結果。 cache,代表目前的快取物件。

sync_shared::d eallocate

從指定位置起算的儲存體中,釋放指定數目的物件。

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

參數

ptr
要從儲存體解除配置之第一個物件的指標。

計數
要從儲存空間解除配置的物件數目。

備註

此成員函式會鎖定 mutex、呼叫 cache.deallocate(ptr, count) (其中 cache 代表快取物件),然後解除鎖定 mutex。

sync_shared::equals

比較兩個快取是否相等。

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

參數

Cache
與同步處理篩選相關聯的快取類型。

其他
要比較是否相等的快取。

傳回值

如果 cache.equals(Other.cache) 的結果 (其中 cache 代表快取物件) 是 true,即為 true,否則為 false

備註

另請參閱

<allocators>