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 el ile sıfırlama olayı.
Sözdizimi
class event;
Üyeler
Ortak Oluşturucular
| Veri Akışı Adı | Açıklama |
|---|---|
| ~olay Yıkıcı | Bir olayı yok eder. |
Genel Yöntemler
| Veri Akışı Adı | Açıklama |
|---|---|
| sıfırlama | Olayı sinyalsiz bir duruma sıfırlar. |
| set | Olayı sinyaller. |
| beklemek | Olayın işaretlenmesini bekler. |
| wait_for_multiple | Birden çok olayın sinyallemesini bekler. |
Genel Sabitler
| Veri Akışı Adı | Açıklama |
|---|---|
| timeout_infinite | Beklemenin hiçbir zaman zaman aşımına neden olmadığını belirten değer. |
Açıklamalar
Daha fazla bilgi için bkz . Eşitleme Veri Yapıları.
Devralma Hiyerarşisi
event
Gereksinimler
Üst bilgi: concrt.h
Ad alanı: eşzamanlılık
event
Yeni bir olay oluşturur.
_CRTIMP event();
~olay
Bir olayı yok eder.
~event();
Açıklamalar
Yıkıcı çalıştığında olayda bekleyen iş parçacığı olmaması beklenir. Olayın hala bekleyen iş parçacıklarıyla yok etmesine izin vermek tanımlanmamış davranışa neden olur.
sıfırlama
Olayı sinyalsiz bir duruma sıfırlar.
void reset();
set
Olayı sinyaller.
void set();
Açıklamalar
Olayın işaretlenmesi, olayda çalıştırılabilir duruma gelmesini bekleyen rastgele sayıda bağlama neden olabilir.
timeout_infinite
Beklemenin hiçbir zaman zaman aşımına neden olmadığını belirten değer.
static const unsigned int timeout_infinite = COOPERATIVE_TIMEOUT_INFINITE;
wait
Olayın işaretlenmesini bekler.
size_t wait(unsigned int _Timeout = COOPERATIVE_TIMEOUT_INFINITE);
Parametreler
_Zaman aşımı
Bekleme zaman aşımına uğramadan önce milisaniye sayısını gösterir. değer COOPERATIVE_TIMEOUT_INFINITE , zaman aşımı olmadığını gösterir.
Dönüş Değeri
Beklemenin karşılanması durumunda değer 0 döndürülür; aksi takdirde, beklemenin olay sinyali olmadan zaman aşımına uğramasını belirten değer COOPERATIVE_WAIT_TIMEOUT döndürülür.
Önemli
Evrensel Windows Platformu (UWP) uygulamasında ASTA iş parçacığını çağırmayın wait çünkü bu çağrı geçerli iş parçacığını engelleyebilir ve uygulamanın yanıt vermemesine neden olabilir.
wait_for_multiple
Birden çok olayın sinyallemesini bekler.
static size_t __cdecl wait_for_multiple(
_In_reads_(count) event** _PPEvents,
size_t count,
bool _FWaitAll,
unsigned int _Timeout = COOPERATIVE_TIMEOUT_INFINITE);
Parametreler
_PPEvents
Beklenecek bir dizi olay. Dizideki olayların sayısı parametresiyle count gösterilir.
count
parametresinde _PPEvents sağlanan dizi içindeki olayların sayısı.
_FWaitAll
değerine trueayarlanırsa parametresi, parametrede sağlanan dizideki _PPEvents tüm olayların beklemeyi karşılamak için işaretlenmesi gerektiğini belirtir. değerine falseayarlanırsa, sinyal verilen parametrede sağlanan dizideki _PPEvents herhangi bir olayın beklemeyi karşıyacağını belirtir.
_Zaman aşımı
Bekleme zaman aşımına uğramadan önce milisaniye sayısını gösterir. değer COOPERATIVE_TIMEOUT_INFINITE , zaman aşımı olmadığını gösterir.
Dönüş Değeri
Beklemenin karşılanması durumunda, dizideki dizin, bekleme koşulunu karşılayan parametrede _PPEvents sağlanır; aksi takdirde, beklemenin koşul karşılanmadan zaman aşımına uğramasını belirten değerdir COOPERATIVE_WAIT_TIMEOUT .
Açıklamalar
parametresi _FWaitAll , beklemeyi karşılamak için tüm olayların sinyal alması gerektiğini belirtmek için değerine true ayarlanırsa, işlevi tarafından döndürülen dizin değeri olmaması dışında özel bir anlam taşımaz COOPERATIVE_WAIT_TIMEOUT.
Önemli
Evrensel Windows Platformu (UWP) uygulamasında ASTA iş parçacığını çağırmayın wait_for_multiple çünkü bu çağrı geçerli iş parçacığını engelleyebilir ve uygulamanın yanıt vermemesine neden olabilir.