Fungsi Passing Pesan
Pustaka Agen Asinkron menyediakan beberapa fungsi yang memungkinkan Anda meneruskan pesan di antara komponen.
Fungsi yang meneruskan pesan ini digunakan dengan berbagai jenis blok pesan. Untuk informasi selengkapnya tentang jenis blok pesan yang ditentukan oleh Runtime Konkurensi, lihat Blok Pesan Asinkron.
Bagian
Topik ini menjelaskan fungsi passing pesan berikut:
kirim dan asend
Fungsi konkurensi::send mengirim pesan ke target yang ditentukan secara sinkron dan fungsi konkurensi::asend mengirim pesan ke target yang ditentukan secara asinkron. send
Baik fungsi dan asend
menunggu sampai target menunjukkan bahwa itu pada akhirnya akan menerima atau menolak pesan.
Fungsi send
menunggu hingga target menerima atau menolak pesan sebelum kembali. Fungsi send
mengembalikan true
jika pesan dikirimkan dan false
sebaliknya. send
Karena fungsi bekerja secara sinkron, send
fungsi menunggu target menerima pesan sebelum kembali.
Sebaliknya, asend
fungsi tidak menunggu target menerima atau menolak pesan sebelum kembali. Sebaliknya, asend
fungsi mengembalikan true
jika target menerima pesan dan akhirnya akan mengambilnya. Jika tidak, asend
kembali false
untuk menunjukkan bahwa target menolak pesan atau menunda keputusan tentang apakah akan mengambil pesan.
[Atas]
menerima dan try_receive
Fungsi konkurensi::receive dan concurrency::try_receive membaca data dari sumber tertentu. Fungsi receive
menunggu data tersedia, sedangkan try_receive
fungsi segera kembali.
receive
Gunakan fungsi saat Anda harus memiliki data untuk melanjutkan. try_receive
Gunakan fungsi jika Anda tidak boleh memblokir konteks saat ini atau Anda tidak perlu memiliki data untuk melanjutkan.
[Atas]
Contoh
Untuk contoh yang menggunakan send
fungsi dan asend
, dan receive
, lihat topik berikut:
[Atas]
Lihat juga
Pustaka Agen Asinkron
Blok Pesan Asinkron
Kirim Fungsi
fungsi asend
fungsi penerimaan
Fungsi try_receive