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.
ITarget sınıfı, tüm hedef bloklar için arabirimdir. Hedef bloklar, bloklar tarafından ISource kendilerine sunulan iletileri kullanır.
Sözdizimi
template<class T>
class ITarget;
Parametreler
T
Hedef blok tarafından kabul edilen iletilerde yükün veri türü.
Üyeler
Genel Tür Tanımları
| Veri Akışı Adı | Açıklama |
|---|---|
filter_method |
Blok tarafından kullanılan ve sunulan bir iletinin kabul edilip edilmeyeceğini belirlemek için değer bool döndüren herhangi bir yöntemin imzası. |
type |
için Tbir tür diğer adı. |
Ortak Oluşturucular
| Veri Akışı Adı | Açıklama |
|---|---|
| ~ITarget Yıkıcısı | Nesneyi yok eder ITarget . |
Genel Yöntemler
| Veri Akışı Adı | Açıklama |
|---|---|
| Yay -mak | Türetilmiş bir sınıfta geçersiz kılındığında, bir kaynak bloktaki bir iletiyi zaman uyumsuz olarak bu hedef bloğa geçirir. |
| Gönder | Türetilmiş bir sınıfta geçersiz kılındığında, bir iletiyi hedef bloğa zaman uyumlu bir şekilde geçirir. |
| supports_anonymous_source | Türetilmiş bir sınıfta geçersiz kılındığında, ileti bloğunun ona bağlı olmayan bir kaynak tarafından sunulan iletileri kabul edip etmediğine bağlı olarak true veya false döndürür. Geçersiz kılınan yöntem döndürürse true, daha sonra ertelenen bir iletinin tüketimi kaynağın kaynak bağlantı kayıt defterinde tanımlanmasını gerektirdiğinden, hedef sunulan iletiyi erteleyemez. |
Korumalı Yöntemler
| Veri Akışı Adı | Açıklama |
|---|---|
| link_source | Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen bir kaynak bloğu bu ITarget bloğa bağlar. |
| unlink_source | Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen kaynak bloğun bu ITarget blokla bağlantısını kaldırır. |
| unlink_sources | Türetilmiş bir sınıfta geçersiz kılındığında, tüm kaynak blokların bu ITarget bloktaki bağlantılarını kaldırır. |
Açıklamalar
Daha fazla bilgi için bkz . Zaman Uyumsuz İleti Blokları.
Devralma Hiyerarşisi
ITarget
Gereksinimler
Üst bilgi: agents.h
Ad alanı: eşzamanlılık
~ITarget
Nesneyi yok eder ITarget .
virtual ~ITarget();
link_source
Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen bir kaynak bloğu bu ITarget bloğa bağlar.
virtual void link_source(_Inout_ ISource<T>* _PSource) = 0;
Parametreler
_PSource
Bu ISource ITarget bloğa bağlı olan blok.
Açıklamalar
Bu işlev doğrudan bir ITarget blokta çağrılmamalıdır. Bloklar, ilgili hedefte link_target yöntemini çağıracak link_source olan bloklar üzerindeki ISource yöntemi kullanılarak birbirine bağlanmalıdır.
Yay -mak
Türetilmiş bir sınıfta geçersiz kılındığında, bir kaynak bloktaki bir iletiyi zaman uyumsuz olarak bu hedef bloğa geçirir.
virtual message_status propagate(
_Inout_opt_ message<T>* _PMessage,
_Inout_opt_ ISource<T>* _PSource) = 0;
Parametreler
_PMessage
Nesnenin işaretçisi message .
_PSource
İletiyi sunan kaynak bloğun işaretçisi.
Dönüş Değeri
Hedefin iletiyle ne yapmaya karar verdiklerine ilişkin message_status bir gösterge.
Açıklamalar
veya parametresi ise yöntemi bir invalid_argument özel durumu oluşturur._PMessage NULL_PSource
Gönder
Türetilmiş bir sınıfta geçersiz kılındığında, bir iletiyi hedef bloğa zaman uyumlu bir şekilde geçirir.
virtual message_status send(
_Inout_ message<T>* _PMessage,
_Inout_ ISource<T>* _PSource) = 0;
Parametreler
_PMessage
Nesnenin işaretçisi message .
_PSource
İletiyi sunan kaynak bloğun işaretçisi.
Dönüş Değeri
Hedefin iletiyle ne yapmaya karar verdiklerine ilişkin message_status bir gösterge.
Açıklamalar
veya parametresi ise yöntemi bir invalid_argument özel durumu oluşturur._PMessage NULL_PSource
send İleti başlatma dışında yönteminin kullanılması ve iletilerin bir ağ içinde yayılması tehlikelidir ve kilitlenmeye yol açabilir.
Döndürdüğünde send , ileti zaten kabul edilmiş ve hedef bloğa aktarılmıştır veya hedef tarafından reddedilmiştir.
supports_anonymous_source
Türetilmiş bir sınıfta geçersiz kılındığında, ileti bloğunun ona bağlı olmayan bir kaynak tarafından sunulan iletileri kabul edip etmediğine bağlı olarak true veya false döndürür. Geçersiz kılınan yöntem döndürürse true, daha sonra ertelenen bir iletinin tüketimi kaynağın kaynak bağlantı kayıt defterinde tanımlanmasını gerektirdiğinden, hedef sunulan iletiyi erteleyemez.
virtual bool supports_anonymous_source();
Dönüş Değeri
true blok, başka bir şekilde bağlantılı false olmayan bir kaynaktan gelen iletiyi kabul edebilirse.
unlink_source
Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen kaynak bloğun bu ITarget blokla bağlantısını kaldırır.
virtual void unlink_source(_Inout_ ISource<T>* _PSource) = 0;
Parametreler
_PSource
Bu ISource blokla ITarget bağlantısı kaldırılan blok.
Açıklamalar
Bu işlev doğrudan bir ITarget blokta çağrılmamalıdır. Bloklar, ilgili hedefte unlink_target unlink_targets yöntemini çağıracak unlink_source olan veya blokları üzerindeki ISource yöntemleri kullanılarak kesilmelidir.
unlink_sources
Türetilmiş bir sınıfta geçersiz kılındığında, tüm kaynak blokların bu ITarget bloktaki bağlantılarını kaldırır.
virtual void unlink_sources() = 0;