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.
Kelas ini menyediakan metode untuk mendapatkan dan merilis kepemilikan objek bagian penting.
Sintaks
class CComCriticalSection
Anggota
Konstruktor Publik
| Nama | Deskripsi |
|---|---|
| CComCriticalSection::CComCriticalSection | Konstruktor. |
Metode Publik
| Nama | Deskripsi |
|---|---|
| CComCriticalSection::Init | Membuat dan menginisialisasi objek bagian penting. |
| CComCriticalSection::Lock | Mendapatkan kepemilikan objek bagian penting. |
| CComCriticalSection::Term | Merilis sumber daya sistem yang digunakan oleh objek bagian penting. |
| CComCriticalSection::Unlock | Merilis kepemilikan objek bagian penting. |
Anggota Data Publik
| Nama | Deskripsi |
|---|---|
| CComCriticalSection::m_sec | Objek CRITICAL_SECTION. |
Keterangan
CComCriticalSection mirip dengan kelas CComAutoCriticalSection, kecuali bahwa Anda harus secara eksplisit menginisialisasi dan merilis bagian penting.
Biasanya, Anda menggunakan CComCriticalSection melalui typedef nama CriticalSection. Nama ini mereferensikan CComCriticalSection ketika CComMultiThreadModel sedang digunakan.
Lihat Kelas CComCritSecLock untuk cara yang lebih aman menggunakan kelas ini daripada memanggil Lock dan Unlock langsung.
Persyaratan
Header: atlcore.h
CComCriticalSection::CComCriticalSection
Konstruktor.
CComCriticalSection() throw();
Keterangan
Mengatur anggota data m_sec ke NULL.
CComCriticalSection::Init
Memanggil fungsi Win32 InitializeCriticalSection, yang menginisialisasi objek bagian penting yang terkandung dalam anggota data m_sec.
HRESULT Init() throw();
Tampilkan Nilai
Mengembalikan S_OK pada keberhasilan, E_OUTOFMEMORY, atau E_FAIL pada kegagalan.
CComCriticalSection::Lock
Memanggil fungsi Win32 EnterCriticalSection, yang menunggu hingga utas dapat mengambil kepemilikan objek bagian penting yang terkandung dalam anggota data m_sec .
HRESULT Lock() throw();
Tampilkan Nilai
Mengembalikan S_OK pada keberhasilan, E_OUTOFMEMORY, atau E_FAIL pada kegagalan.
Keterangan
Objek bagian penting harus terlebih dahulu diinisialisasi dengan panggilan ke metode Init . Ketika kode yang dilindungi telah selesai dieksekusi, utas harus memanggil Unlock untuk merilis kepemilikan bagian penting.
CComCriticalSection::m_sec
Berisi objek bagian penting yang digunakan oleh semua CComCriticalSection metode.
CRITICAL_SECTION m_sec;
CComCriticalSection::Term
Memanggil fungsi Win32 DeleteCriticalSection, yang merilis semua sumber daya yang digunakan oleh objek bagian penting yang terkandung dalam anggota data m_sec .
HRESULT Term() throw();
Tampilkan Nilai
Mengembalikan S_OK.
Keterangan
Setelah Term dipanggil, bagian penting tidak dapat lagi digunakan untuk sinkronisasi.
CComCriticalSection::Unlock
Memanggil fungsi Win32 LeaveCriticalSection, yang merilis kepemilikan objek bagian penting yang terkandung dalam anggota data m_sec .
HRESULT Unlock() throw();
Tampilkan Nilai
Mengembalikan S_OK.
Keterangan
Untuk terlebih dahulu mendapatkan kepemilikan, utas harus memanggil metode Lock . Setiap panggilan untuk Lock memerlukan panggilan yang sesuai untuk Unlock merilis kepemilikan bagian penting.
Lihat juga
CComFakeCriticalSection Class
Gambaran Umum Kelas
Kelas CComcritSecLock