Kelas CriticalSection
Mewakili objek bagian penting.
Sintaks
class CriticalSection;
Anggota
Konstruktor
Nama | Deskripsi |
---|---|
CriticalSection::CriticalSection | Menginisialisasi objek sinkronisasi yang mirip dengan objek mutex, tetapi hanya dapat digunakan oleh utas dari satu proses. |
CriticalSection::~CriticalSection | Mendeinisialisasi dan menghancurkan objek saat ini CriticalSection . |
Metode Publik
Nama | Deskripsi |
---|---|
CriticalSection::IsValid | Menunjukkan apakah bagian penting saat ini valid. |
CriticalSection::Lock | Menunggu kepemilikan objek bagian penting yang ditentukan. Fungsi mengembalikan ketika utas panggilan diberikan kepemilikan. |
CriticalSection::TryLock | Mencoba memasukkan bagian penting tanpa memblokir. Jika panggilan berhasil, utas panggilan mengambil kepemilikan dari bagian penting. |
Anggota Data yang Dilindungi
Nama | Deskripsi |
---|---|
CriticalSection::cs_ | Mendeklarasikan anggota data bagian penting. |
Hierarki Warisan
CriticalSection
Persyaratan
Header: corewrappers.h
Namespace: Microsoft::WRL::Wrappers
CriticalSection::~CriticalSection
Mendeinisialisasi dan menghancurkan objek saat ini CriticalSection
.
WRL_NOTHROW ~CriticalSection();
CriticalSection::CriticalSection
Menginisialisasi objek sinkronisasi yang mirip dengan objek mutex, tetapi hanya dapat digunakan oleh utas dari satu proses.
explicit CriticalSection(
ULONG spincount = 0
);
Parameter
spincount
Jumlah putaran untuk objek bagian kritis. Nilai default adalah 0.
Keterangan
Untuk informasi selengkapnya tentang bagian penting dan spincount, lihat InitializeCriticalSectionAndSpinCount
fungsi di bagian Synchronization
dokumentasi Windows API.
CriticalSection::cs_
Mendeklarasikan anggota data bagian penting.
CRITICAL_SECTION cs_;
Keterangan
Anggota data ini dilindungi.
CriticalSection::IsValid
Menunjukkan apakah bagian penting saat ini valid.
bool IsValid() const;
Tampilkan Nilai
Secara default, selalu mengembalikan true
.
CriticalSection::Lock
Menunggu kepemilikan objek bagian penting yang ditentukan. Fungsi mengembalikan ketika utas panggilan diberikan kepemilikan.
SyncLock Lock();
static SyncLock Lock(
_In_ CRITICAL_SECTION* cs
);
Parameter
Cs
Objek bagian penting yang ditentukan pengguna.
Tampilkan Nilai
Objek kunci yang dapat digunakan untuk membuka kunci bagian penting saat ini.
Keterangan
Fungsi pertama Lock
memengaruhi objek bagian penting saat ini. Fungsi kedua Lock
memengaruhi bagian penting yang ditentukan pengguna.
CriticalSection::TryLock
Mencoba memasukkan bagian penting tanpa memblokir. Jika panggilan berhasil, utas panggilan mengambil kepemilikan dari bagian penting.
SyncLock TryLock();
static SyncLock TryLock(
_In_ CRITICAL_SECTION* cs
);
Parameter
Cs
Objek bagian penting yang ditentukan pengguna.
Tampilkan Nilai
Nilai bukan nol jika bagian penting berhasil dimasukkan atau utas saat ini sudah memiliki bagian penting. Nol jika utas lain sudah memiliki bagian penting.
Keterangan
Fungsi pertama TryLock
memengaruhi objek bagian penting saat ini. Fungsi kedua TryLock
memengaruhi bagian penting yang ditentukan pengguna.