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.
Mewakili jenis mutex. Berbeda dengan mutex, perilaku panggilan ke metode penguncian untuk objek yang sudah dikunci ditentukan dengan baik.
Sintaks
class recursive_mutex;
Anggota
Konstruktor Publik
| Nama | Deskripsi |
|---|---|
| recursive_mutex | Membuat recursive_mutex objek. |
| ~recursive_mutex Destructor | Merilis sumber daya apa pun yang digunakan oleh recursive_mutex objek. |
Metode Publik
| Nama | Deskripsi |
|---|---|
| kunci | Memblokir utas panggilan hingga utas mendapatkan kepemilikan mutex. |
| try_lock | Mencoba untuk mendapatkan kepemilikan mutex tanpa memblokir. |
| Membuka | Merilis kepemilikan mutex. |
Persyaratan
Header:<mutex>
Namespace: std
kunci
Memblokir utas panggilan hingga utas mendapatkan kepemilikan mutex.
void lock();
Keterangan
Jika utas mutexpanggilan sudah memiliki , metode segera kembali, dan kunci sebelumnya tetap berlaku.
recursive_mutex
Membuat recursive_mutex objek yang tidak dikunci.
recursive_mutex();
~recursive_mutex
Merilis sumber daya apa pun yang digunakan oleh objek.
~recursive_mutex();
Keterangan
Jika objek dikunci saat destruktor berjalan, perilaku tidak terdefinisi.
try_lock
Mencoba untuk mendapatkan kepemilikan mutex tanpa pemblokiran.
bool try_lock() noexcept;
Tampilkan Nilai
true jika metode berhasil mendapatkan kepemilikan mutex dari atau jika utas mutex**; otherwise, **falsepanggilan sudah memiliki .
Keterangan
Jika utas mutexpanggilan sudah memiliki , fungsi segera mengembalikan true, dan kunci sebelumnya tetap berlaku.
Membuka
Merilis kepemilikan mutex.
void unlock();
Keterangan
Metode ini melepaskan kepemilikan satu-satunya mutex setelah dipanggil sebanyak kunci dan try_lock berhasil dipanggil pada recursive_mutex objek.
Jika utas panggilan tidak memiliki mutex, perilaku tidak ditentukan.