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.
sınıfı, task_completion_event bir koşul karşılanana kadar görevin yürütülmesini geciktirmenize veya bir dış olaya yanıt olarak bir görev başlatmanıza olanak tanır.
Sözdizimi
template<typename _ResultType>
class task_completion_event;
template<>
class task_completion_event<void>;
Parametreler
_SonuçTipi
Bu task_completion_event sınıfın sonuç türü.
Üyeler
Ortak Oluşturucular
| Veri Akışı Adı | Açıklama |
|---|---|
| task_completion_event | Bir task_completion_event nesne oluşturur. |
Genel Yöntemler
| Veri Akışı Adı | Açıklama |
|---|---|
| set | Aşırı yüklü Görev tamamlama olayını ayarlar. |
| set_exception | Aşırı yüklü İstisnayı, bu olayla ilişkili tüm görevlere yayar. |
Açıklamalar
Senaryonuz, gelecekte bir noktada tamamlanacak ve devamları yürütülmek üzere zamanlanacak bir görev oluşturmanızı gerektirdiğinde, bir görev tamamlama olayından oluşturulan bir görevi kullanın. , task_completion_event oluşturduğunuz görevle aynı türe sahip olmalıdır ve bu tür bir değerle görev tamamlama olayında set yöntemini çağırmak, ilişkili görevin tamamlanmasına neden olur ve bu değeri devamlılıklarının sonucu olarak sağlar.
Görev tamamlama olayı hiçbir zaman işaretlenmezse, bu olaydan oluşturulan görevler olay yok edildiğinde iptal edilir.
task_completion_event akıllı işaretçi gibi davranır ve değer olarak aktarılmalıdır.
Devralma Hiyerarşisi
task_completion_event
Gereksinimler
Üst bilgi: ppltasks.h
Ad alanı: eşzamanlılık
set
Görev tamamlama olayını ayarlar.
bool set(_ResultType _Result) const ;
bool set() const ;
Parametreler
_Sonuç
Bu etkinlik için ayarlanacak sonuç.
Dönüş Değeri
Yöntem, etkinliği ayarlamada başarılı olursa true döndürür. Olay zaten ayarlanmışsa false değerini döndürür.
Açıklamalar
öğesine yapılan birden çok veya eşzamanlı çağrının setvarlığında yalnızca ilk çağrı başarılı olur ve sonucu (varsa) görev tamamlama olayında depolanır. Kalan kümeler yoksayılır ve yöntem "false" değerini döndürür. Bir görev tamamlama olayı ayarladığınızda, bu olaydan oluşturulan tüm görevler hemen tamamlanır ve varsa devamları zamanlanır.
void farklı bir _ResultType değerine sahip görev tamamlama nesneleri, değeri devamlılıklarına iletir.
set_exception
Bu olayla ilişkili tüm görevlere bir istisna yayar.
template<typename _E>
__declspec(noinline) bool set_exception(_E _Except) const;
__declspec(noinline) bool set_exception(std::exception_ptr _ExceptionPtr) const ;
Parametreler
_E
Özel durum türü.
_Hariç
Ayarlanacak özel durum.
_ExceptionPtr
Ayarlanacak özel durum işaretçisi.
Dönüş Değeri
görev_tamamlanma_olayı
Bir task_completion_event nesne oluşturur.
task_completion_event();