source_block – třída
Třída source_block je abstraktní základní třídou pro bloky, které jsou pouze zdrojové.Tato třída poskytuje základní funkčnost správy spojování a také běžnou kontrolu chyb.
template<
class _TargetLinkRegistry,
class _MessageProcessorType = ordered_message_processor<typename _TargetLinkRegistry::type::type>
>
class source_block : public ISource<typename _TargetLinkRegistry::type::type>;
Parametry
_TargetLinkRegistry
Propojení registru pro hospodářství cílové odkazy._MessageProcessorType
Typ procesoru pro zpracování zprávy.
Členy
Veřejné definice Typedef
Název |
Description |
---|---|
target_iterator |
Iterační procházet připojené cíle. |
Veřejné konstruktory
Název |
Description |
---|---|
Sestavte objekt source_block. |
|
Odstraní objekt source_block. |
Veřejné metody
Název |
Description |
---|---|
Přijímá zprávy, který nabídl to source_block objekt, převedení vlastnictví k volajícímu. |
|
Získá počet odkazů na to source_block objekt, chcete-li zabránit odstranění. |
|
Zpracovává zprávy dříve nabízené to source_block objektu a úspěšně vyhrazen cíle, převod vlastnictví k volajícímu. |
|
Cíl bloku odkazuje na to source_block objektu. |
|
Vydává předchozí úspěšné zprávy rezervace. |
|
Počet odkazů v tomto vydání source_block objektu. |
|
Rezervy zprávu dříve nabízené to source_block objektu. |
|
Zruší propojení cílového bloku z toho source_block objektu. |
|
Zruší všechny bloky cíl z tohoto propojení source_block objektu. (Přepisuje ISource::unlink_targets.) |
Chráněné metody
Název |
Description |
---|---|
Při přepsání v odvozené třídě, přijímá hlášení nabízené zdrojem.Bloků zprávy musí přepsat tuto metodu k ověření, _MsgId a vrátí zprávu. |
|
Asynchronní fronty zpráv a spustí úloha šíření, pokud to nebylo provedeno již |
|
Při přepsání v odvozené třídě, zpracovává zprávy, která byla dříve vyhrazena. |
|
Umožňuje zpracování pro tento blok v dávce. |
|
Inicializuje message_propagator v tomto source_block. |
|
Zpětné volání, které upozorní, že nový cíl spojován s tím source_block objektu. |
|
Postup pro zadávání zpráv.To je užitečné pouze pro Šiřitel bloků, které jsou odvozeny z source_block |
|
Šíření zpráv do cíle. |
|
Při přepsání v odvozené třídě, šíří některé nebo všechny propojené cíle dané zprávy.Je to rutinní šíření hlavních bloků zprávy. |
|
Při přepsání v odvozené třídě uvolní předchozí zprávy rezervace. |
|
Odebere všechny odkazy na cíl pro tento zdroj blok.To by měla být volána z destruktoru. |
|
Při přepsání v odvozené třídě, vyhrazuje si dříve nabízené tuto zprávu source_block objektu. |
|
Při přepsání v odvozené třídě, pokračuje v šíření po rezervaci vydala. |
|
Synchronně fronty zpráv a spustí úloha šíření, pokud to dosud neučinili. |
|
Zpětné volání upozornění cíl byla odpojena od tohoto source_block objektu. |
|
Čeká všechny asynchronní šíření dokončete.Toto specifické Šiřitel spin čekání je používán destruktory bloků zprávy a ujistěte se, že všechny asynchronní šíření mají čas na dokončení před zničením bloku. |
Poznámky
Bloků zprávy by měla být odvozena z tohoto bloku využít odkaz Správa a synchronizace od této třídy.
Hierarchie dědičnosti
source_block
Požadavky
Záhlaví: agents.h
Obor názvů: souběžnost