Udostępnij za pośrednictwem


Funkcje przekazywania komunikatów

Asynchroniczne biblioteki agentów zawiera kilka funkcji, które umożliwiają przekazywanie wiadomości między składnikami.

Funkcje służące do przekazywania wiadomości te są używane z różnymi typami bloku komunikatów.Aby uzyskać więcej informacji na temat typów bloku komunikatów, które są zdefiniowane w czasie wykonywania współbieżności zobacz Bloki komunikatów asynchronicznych.

Sekcje

W tym temacie opisano następujące funkcje służące do przekazywania wiadomości:

  • Wyślij i asend

  • otrzymywać i try_receive

  • Przykłady

Wyślij i asend

Concurrency::send funkcji wysyła wiadomość do określonego miejsca docelowego synchronicznie i w concurrency::asend funkcji wysyła wiadomość do określonego miejsca docelowego asynchronicznie.Obie send i asend funkcje poczekać na docelowym wskazuje, że to będzie ostatecznie zaakceptować lub odrzucić wiadomość.

send Funkcja oczekuje, aż obiekt docelowy zaakceptuje lub odrzuci wiadomość, zanim zwróci.send Działać zwraca true , jeśli wiadomość została dostarczona i false inaczej.Ponieważ send funkcja działa synchronicznie, send funkcja oczekuje na docelowym otrzymać wiadomość, zanim zwróci.

Odwrotnie asend funkcja nie czeka na docelowym zaakceptować lub odrzucić wiadomość, zanim zwróci.Zamiast tego asend działać zwraca true , jeśli obiekt docelowy akceptuje wiadomości i ostatecznie będzie podjąć.W przeciwnym razie asend zwraca false aby wskazać, że obiekt docelowy odrzucił komunikat lub decyzji o tym, czy wiadomości zostały przełożone.

Top

otrzymywać i try_receive

Concurrency::receive i concurrency::try_receive funkcji odczytu danych z danego źródła.receive Funkcja oczekuje na dane staną się dostępne, należy try_receive funkcja zwraca się niezwłocznie.

Użyj receive gdy musi mieć dane, aby kontynuować.Użyj try_receive działać, jeśli nie należy blokować bieżącego kontekstu lub nie masz dane, aby kontynuować.

Top

Przykłady

Przykłady, które używają send i asend, i receive funkcji, zobacz następujące tematy:

Top

Zobacz też

Informacje

send — Funkcja

asend — Funkcja

receive — Funkcja

try_receive — Funkcja

Koncepcje

Biblioteka agentów asynchronicznych

Bloki komunikatów asynchronicznych