Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Menjelaskan filter sinkronisasi yang menyediakan objek cache terpisah untuk setiap utas.
Sintaks
template <class Cache>
class sync_per_thread
Parameter
Cache
Jenis cache yang terkait dengan filter sinkronisasi. Bisa berupa cache_chunklist, cache_freelist, atau cache_suballoc.
Keterangan
Alokator yang menggunakan sync_per_thread dapat membandingkan sama meskipun blok yang dialokasikan dalam satu utas tidak dapat dibatalkan alokasinya dari utas lain. Saat menggunakan salah satu blok memori alokator ini yang dialokasikan dalam satu utas tidak boleh dibuat terlihat oleh utas lain. Dalam praktiknya, ini berarti bahwa kontainer yang menggunakan salah satu alokator ini hanya boleh diakses oleh satu utas.
Fungsi anggota
| Fungsi anggota | Deskripsi |
|---|---|
| Mengalokasikan | Mengalokasikan blok memori. |
| batalkan alokasi | Membebaskan jumlah objek tertentu dari penyimpanan yang dimulai pada posisi tertentu. |
| setara | Membandingkan dua cache untuk kesetaraan. |
Persyaratan
Header:<alokator>
Namespace: stdext
sync_per_thread::alokasikan
Mengalokasikan blok memori.
void *allocate(std::size_t count);
Parameter
hitung
Jumlah elemen dalam array yang akan dialokasikan.
Keterangan
Fungsi anggota mengembalikan hasil panggilan ke cache::allocate(count) pada objek cache milik utas saat ini. Jika tidak ada objek cache yang dialokasikan untuk utas saat ini, objek tersebut terlebih dahulu mengalokasikannya.
sync_per_thread::d eallocate
Membebaskan jumlah objek tertentu dari penyimpanan yang dimulai pada posisi tertentu.
void deallocate(void* ptr, std::size_t count);
Parameter
ptr
Penunjuk ke objek pertama yang akan dibatalkan alokasinya dari penyimpanan.
hitung
Jumlah objek yang akan dibatalkan alokasinya dari penyimpanan.
Keterangan
Fungsi anggota memanggil pada objek cache milik utas deallocate saat ini. Jika tidak ada objek cache yang dialokasikan untuk utas saat ini, objek tersebut terlebih dahulu mengalokasikannya.
sync_per_thread::equals
Membandingkan dua cache untuk kesetaraan.
bool equals(const sync<Cache>& Other) const;
Parameter
Cache
Objek cache filter sinkronisasi.
Lainnya
Objek cache untuk dibandingkan dengan kesetaraan.
Tampilkan Nilai
false jika tidak ada objek cache yang dialokasikan untuk objek ini atau untuk Lainnya di utas saat ini. Jika tidak, ia mengembalikan hasil penerapan operator== ke dua objek cache.