propagator_block sınıfı
propagator_block Bir soyut temel sınıf hem kaynak hem de hedef ileti blokları bir sınıftır.Her ikisinin işlevselliğini birleştiren source_block ve target_block sınıfları.
template<
class _TargetLinkRegistry,
class _SourceLinkRegistry,
class _MessageProcessorType = ordered_message_processor<typename _TargetLinkRegistry::type::type>
>
class propagator_block : public source_block<_TargetLinkRegistry, _MessageProcessorType>, public ITarget<typename _SourceLinkRegistry::type::source_type>;
Parametreler
_TargetLinkRegistry
Hedef bağlantıları tutmak için kullanılacak bağlantı kayıt._SourceLinkRegistry
Kaynak bağlantıları tutmak için kullanılacak bağlantı kayıt._MessageProcessorType
İşlemci türü için ileti işleme.
Üyeler
TypeDef genel
Ad |
Description |
---|---|
source_iterator |
Yineleyici için tür source_link_manager bu propagator_block. |
Ortak Oluşturucusu
Ad |
Description |
---|---|
Yapıları bir propagator_block nesnesi. |
|
Bozar bir propagator_block nesnesi. |
Public yöntemler
Ad |
Description |
---|---|
Zaman uyumsuz ileti bu hedef blok kaynak bloğundan diğerine geçirir. |
|
Bu blok bir iletiye eş zamanlı olarak başlatır.Arayan bir ISource blok.Bu işlev tamamlandığında ileti zaten bloğuna dağıtıldıktan. |
Korumalı yöntemleri
Ad |
Description |
---|---|
Blok yeni ileti reddedildi olduğunu gösterir. |
|
Temel nesnesini başlatır.Özellikle, message_processor nesnesinin başlatılması gerekiyor. |
|
Belirtilen kaynak bloğu için bağlar propagator_block nesnesi. |
|
İşlem iletileri girdi.Sadece source_block türetmek yayılması blokları için yararlıdır (geçersiz kılar source_block::process_input_messages.) |
|
Türetilmiş bir sınıfta geçersiz olduğunda bu yöntem zaman uyumsuz bir iletiden geçen bir ISource bu blok propagator_block nesnesi.Tarafından çağrılan propagate kaynak bloğu tarafından çağrıldığında yöntemi. |
|
Alınan her ileti çağrılan bir filtre yöntemini kaydeder. |
|
Buradan tüm kaynak ve hedef ağ bağlantıları kaldırır propagator_block nesnesi. |
|
Türetilmiş bir sınıfta geçersiz olduğunda bu yöntem bir iletiden eşzamanlı olarak geçen bir ISource bu blok propagator_block nesnesi.Tarafından çağrılan send kaynak bloğu tarafından çağrıldığında yöntemi. |
|
Belirtilen kaynak blok Bu bölümden bağlantıyı keser propagator_block nesnesi. |
|
Tüm kaynak bloklarından Bu bölümden bağlantıyı keser propagator_block nesnesi.(Geçersiz kılar ITarget::unlink_sources.) |
Notlar
Birden çok devralma önlemek için propagator_block sınıfı miras alır source_block sınıfı ve ITarget soyut sınıf.Çoğu işlev içinde target_block sınıfı burada çoğaltılır.
Devralma hiyerarşisi
propagator_block
Gereksinimler
Başlık: agents.h
Namespace: eşzamanlılık