Funkce usnadnění
Knihovna asynchronních agentů poskytuje několik funkcí, které umožňují předávat zprávy mezi komponentami.
Tyto funkce předávání zpráv se používají s různými typy bloků zpráv. Další informace o typech bloků zpráv, které jsou definovány modulem Concurrency Runtime, naleznete v tématu Asynchronní bloky zpráv.
Oddíly
Toto téma popisuje následující funkce předávání zpráv:
send and asend
Funkce concurrency::send odešle zprávu do zadaného cíle synchronně a funkce concurrency::asend odešle zprávu do zadaného cíle asynchronně. send
asend
Funkce i funkce čekají, až cíl označí, že zprávu nakonec přijme nebo odmítne.
Funkce send
počká, dokud cíl zprávu přijme nebo odmítne, než se vrátí. Funkce send
vrátí true
, pokud byla zpráva doručena a false
jinak. Vzhledem k tomu, že send
funkce funguje synchronně, send
funkce čeká na přijetí zprávy před vrácením cíle.
Naopak funkce nečeká na asend
přijetí nebo odmítnutí zprávy před vrácením cíle. Místo toho funkce vrátítrue
, asend
pokud cíl přijme zprávu a nakonec ji přijme. V opačném případě se vrátí k false
označení, že cíl zprávu buď odmítl, nebo odložil rozhodnutí o tom, asend
jestli se má zpráva přijmout.
[Nahoře]
příjem a try_receive
Souběžnost ::receive a concurrency:::try_receive funkce čtou data z daného zdroje. Funkce receive
čeká na zpřístupnění dat, zatímco try_receive
funkce vrátí okamžitě.
receive
Tuto funkci použijte, pokud potřebujete, aby data pokračovala. try_receive
Funkci použijte, pokud nesmíte blokovat aktuální kontext nebo nemusíte mít data k pokračování.
[Nahoře]
Příklady
Příklady, které používají funkce send
a a asend
a receive
, najdete v následujících tématech:
[Nahoře]
Viz také
Knihovna asynchronních agentů
Asynchronní bloky zpráv
send – funkce
asend – funkce
receive – funkce
try_receive – funkce