unbounded_buffer-Klasse
Ein unbounded_buffer-Meldungsblock ist ein geordneter propagator_block mit mehreren Zielen und mehreren Quellen, der eine unbegrenzte Anzahl von Meldungen speichern kann.
template<
class _Type
>
class unbounded_buffer : public propagator_block<multi_link_registry<ITarget<_Type>>, multi_link_registry<ISource<_Type>>>;
Parameter
- _Type
Der Nutzlasttyp der Meldungen, die vom Puffer gespeichert und weitergegeben wurden.
Member
Öffentliche Konstruktoren
Name |
Beschreibungen |
---|---|
Überladen. Erstellt einen unbounded_buffer-Meldungsblock. |
|
Zerstört den unbounded_buffer-Meldungsblock. |
Öffentliche Methoden
Name |
Beschreibungen |
---|---|
Entfernt ein Element aus diesem unbounded_buffer-Meldungsblock. |
|
Fügt dem unbounded_buffer-Meldungsblock ein Element hinzu. |
Geschützte Methoden
Name |
Beschreibungen |
---|---|
Akzeptiert eine Meldung, die von diesem unbounded_buffer-Meldungsblock angeboten wurde, und überträgt den Besitz an den Aufrufer. |
|
Nimmt eine Meldung an, die zuvor vom unbounded_buffer-Meldungsblock angeboten und vom Ziel reserviert wurde, und überträgt den Besitz an den Aufrufer. |
|
Ein Rückruf, der meldet, dass ein neues Ziel mit diesem unbounded_buffer-Meldungsblock verknüpft wurde. |
|
Übergibt eine Meldung asynchron von einem ISource-Block an diesen unbounded_buffer-Meldungsblock. Wird bei Aufruf durch einen Quellblock von der propagate-Methode aufgerufen. |
|
Fügt message_PMessage in diesen unbounded_buffer-Meldungsblock ein und versucht, sie allen verknüpften Zielen anzubieten. |
|
Gibt die Reservierung einer vorherigen Meldung frei. (Überschreibt source_block::release_message.) |
|
Reserviert eine Meldung, die zuvor von diesem unbounded_buffer-Meldungsblock angeboten wurde. (Überschreibt source_block::reserve_message.) |
|
Setzt die Weitergabe fort, nachdem eine Reservierung freigegeben wurde. (Überschreibt source_block::resume_propagation.) |
|
Übergibt eine Meldung synchron von einem ISource-Block an diesen unbounded_buffer-Meldungsblock. Wird bei Aufruf durch einen Quellblock von der send-Methode aufgerufen. |
Hinweise
Weitere Informationen finden Sie unter Asynchrone Nachrichtenblöcke.
Vererbungshierarchie
Anforderungen
Header: agents.h
Namespace: Concurrency