کانالهای Async
چندین crate از asynchronous channel پشتیبانی میکنند. به عنوان مثال tokio
:
Speaker Notes
This slide should take about 8 minutes.
-
اندازه کانال را به
3
تغییر دهید و ببینید که چگونه بر اجرا تأثیر میگذارد. -
بهطورکلی، interface شبیه به channelهای
sync
است که در کلاس صبحگاهی دیده میشود. -
تماس
std::mem::drop
را حذف کنید. چه اتفاقی میافتد؟ چرا؟ -
این crate مربوط به Flume دارای کانالهایی است که
sync
وasync
send
وrecv
را اجرا میکنند. این کار میتواند برای برنامههای پیچیده با taskهای پردازشی IO و CPU سنگین مناسب باشد. -
چیزی که کار با کانالهای
async
را ترجیح میدهد، توانایی ترکیب آنها با دیگرfuture
برای ترکیب آنها و ایجاد جریان کنترل پیچیده است.