Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Eşzamanlılık Çalışma Zamanı'nın açıkça farkında olan, yeniden girilmeyen bir mutex.
Sözdizimi
class critical_section;
Üyeler
Genel Tür Tanımları
| Veri Akışı Adı | Açıklama |
|---|---|
native_handle_type |
Bir nesneye critical_section başvuru. |
Genel Sınıflar
| Veri Akışı Adı | Açıklama |
|---|---|
| critical_section::scoped_lock Sınıfı | Bir nesne için critical_section özel durum güvenli RAII sarmalayıcı. |
Ortak Oluşturucular
| Veri Akışı Adı | Açıklama |
|---|---|
| critical_section | Yeni bir kritik bölüm oluşturur. |
| ~critical_section Yıkıcı | Kritik bir bölümü yok eder. |
Genel Yöntemler
| Veri Akışı Adı | Açıklama |
|---|---|
| lock | Bu kritik bölümü alır. |
| native_handle | Varsa platforma özgü bir yerel tanıtıcı döndürür. |
| try_lock | Kilidi engellemeden almaya çalışır. |
| try_lock_for | Belirli bir milisaniye için engelleme olmadan kilidi almaya çalışır. |
| kilidi açmak | Kritik bölümün kilidini açar. |
Açıklamalar
Daha fazla bilgi için bkz . Eşitleme Veri Yapıları.
Devralma Hiyerarşisi
critical_section
Gereksinimler
Üst bilgi: concrt.h
Ad alanı: eşzamanlılık
critical_section
Yeni bir kritik bölüm oluşturur.
critical_section();
~critical_section
Kritik bir bölümü yok eder.
~critical_section();
Açıklamalar
Yıkıcı çalıştığında kilidin artık tutulmaması beklenir. Kritik bölümün kilitle yok edilmeye devam etmesine izin vermek tanımsız davranışla sonuçlanır.
lock
Bu kritik bölümü alır.
void lock();
Açıklamalar
Bir nesneyi güvenli bir critical_section şekilde almak ve serbest bırakmak için scoped_lock yapısını kullanmak genellikle daha güvenlidir.
Kilit çağrı bağlamı tarafından zaten tutulursa, bir improper_lock özel durumu oluşturulur.
native_handle
Varsa platforma özgü bir yerel tanıtıcı döndürür.
native_handle_type native_handle();
Dönüş Değeri
Kritik bölüme başvuru.
Açıklamalar
Nesne critical_section , Windows işletim sistemi için platforma özgü yerel tanıtıcıyla ilişkilendirilmemiştir. yöntemi yalnızca nesnenin kendisine bir başvuru döndürür.
critical_section::scoped_lock Sınıfı
Bir nesne için critical_section özel durum güvenli RAII sarmalayıcı.
class scoped_lock;
scoped_lock::scoped_lock
Bir scoped_lock nesnesi oluşturur ve parametresinde critical_section _Critical_section geçirilen nesneyi alır. Kritik bölüm başka bir iş parçacığı tarafından tutulursa, bu çağrı engellenir.
explicit _CRTIMP scoped_lock(critical_section& _Critical_section);
Parametreler
_Critical_section
Kilit için kritik bölüm.
scoped_lock::~scoped_lock
Bir scoped_lock nesneyi yok eder ve oluşturucusunda sağlanan kritik bölümü serbest bırakır.
~scoped_lock();
try_lock
Kilidi engellemeden almaya çalışır.
bool try_lock();
Dönüş Değeri
Kilit alınırsa değeri true; aksi takdirde değeri olur false.
try_lock_for
Belirli bir milisaniye için engelleme olmadan kilidi almaya çalışır.
bool try_lock_for(unsigned int _Timeout);
Parametreler
_Zaman aşımı
Zaman aşımına uğramadan önce beklenen milisaniye sayısı.
Dönüş Değeri
Kilit alınırsa değeri true; aksi takdirde değeri olur false.
kilidi açmak
Kritik bölümün kilidini açar.
void unlock();