Aracılığıyla paylaş


structured_task_group sınıfı

structured_task_group Sınıfı yapısallaştırılmış paralel çalışma topluluğu temsil eder.Paralel görevleri için sıraya koyabilirsiniz bir structured_task_group kullanarak task_handle nesneler ve bunların tamamlanmasını bekleyin ya da yürütme başladı değil tüm görevleri iptal yürütülürken, tamamladıktan önce görev grubu iptal.

class structured_task_group;

Üyeler

Dd504799.collapse_all(tr-tr,VS.110).gifOrtak Oluşturucusu

Ad

Description

structured_task_group::structured_task_group yapıcı

Aşırı yüklenmiş.Yeni bir yapı structured_task_group nesnesi.

structured_task_group:: ~ structured_task_group yıkıcı

Bozar bir structured_task_group nesnesi.Ya da çağrı beklenen wait veya run_and_wait yöntemi yürütme yıkıcı nesnenin üzerinde yıkıcı yürütme sürece sonucunda yığın bir özel durum nedeniyle unwinding.

Dd504799.collapse_all(tr-tr,VS.110).gifPublic yöntemler

Ad

Description

structured_task_group::Cancel yöntemi

Alt ağacı kökü bu görev grubu iş iptal etme girişimi bir en iyi çabayı göstermektedir.Her görevin zamanlanan görev grubuna geçişli mümkünse iptal.

structured_task_group::is_canceling yöntemi

Görev grubu iptali ortasındadır, şu anda olsa da olmasa arayan bildirir.Bu, gelmeyebilir cancel yöntemi çağrıldı structured_task_group nesne (geri dönmek için bu yöntemi gibi kesinlikle niteleyen rağmen true).Büyük/küçük harf olabilir, structured_task_group nesnesini yürütmeden satır içi ve başka bir görev grubu oluşturan iş ağacında iptal edildi.Nerede bu gibi durumlarda çalışma zamanı iptali ile bu akar saatin belirleyebilirsiniz structured_task_group nesnesi, true de döndürülür.

structured_task_group::Run yöntemi

Aşırı yüklenmiş.Bir görev üzerinde zamanlar structured_task_group nesnesi.Yaşam arayan yöneten task_handle nesneyi geçirilen _Task_handle parametresi.Parametre sürüm _Placement bu parametre tarafından belirtilen konumda yürütme terkeden ağırlıklı görevin neden olur.

structured_task_group::run_and_wait yöntemi

Aşırı yüklenmiş.Satır içi arama içeriğine Yardımı ile çalışacak bir görev zamanlar structured_task_group tam iptal desteği için nesne.Yoksa bir task_handle nesnesini parametre olarak geçirilen run_and_wait, arayan yaşam yönetiminden sorumlu task_handle nesne.İşlev, daha sonra üzerinde çalışmak kadar bekler structured_task_group nesnesi tamamlanmış veya iptal edilmiş.

structured_task_group::Wait yöntemi

Üzerinde çalışmak kadar bekler structured_task_group tamamlanması veya iptal edilir.

Notlar

Bir dizi kullanımı yerleştirilen ciddi kısıtlamalar vardır bir structured_task_group nesnesi performans kazanmak için:

  • Tek bir structured_task_group nesne birden çok iş parçacığı tarafından kullanılamaz.Tüm işlemler bir structured_task_group object nesnesini oluşturan iş parçacığı tarafından gerçekleştirilmesi gerekir.Bu kuralın iki istisnası üye işlevleri olan cancel ve is_canceling.Nesne lambda ifade yakalama listesinde olmayabilir ve içinde bir görev, görev iptali işlemlerden birini kullanmıyorsanız kullanılacak.

  • Tüm görevler için zamanlanan bir structured_task_group nesnesi kullanılarak zamanlanmış task_handle nesneleri hangi açıkça yaşam yönetmesi gerekir.

  • Birden çok grup yalnızca kesinlikle iç içe sırada kullanılabilir.İki, structured_task_group nesneleri bildirilen, ikincisi (iç bir) bildirilen dışında herhangi bir yöntemi önce destruct gerekir cancel veya is_canceling Birincisi olarak adlandırılır (dış bir).Bu koşul yalnızca birden fazla bildirmek, her iki durumda da doğru tutan structured_task_group durum için sıraya bir görevin yanı sıra aynı veya iç içe geçmiş işlev kapsam içindeki nesneleri structured_task_group ile run veya run_and_wait yöntemleri.

  • Aksine Genel task_group sınıfı, tüm Devletleri structured_task_group son sınıf.Sonra görev grubuna sıraya ve bunları tamamlamak bekledi, aynı grup yeniden kullanamazsınız.

Daha fazla bilgi için bkz. Görev paralellik (eşzamanlılık çalışma zamanı).

Devralma hiyerarşisi

structured_task_group

Gereksinimler

Başlık: ppl.h

Namespace: eşzamanlılık

Ayrıca bkz.

Başvuru

eşzamanlılık ad

task_group sınıfı

task_handle sınıfı