第38章へようこそ。
今日のテーマは「チャネル」です。
第36章で、moveが値の所有権を新しいスレッドへ移すことを見ました。
あのときの移動は、スレッドを生成する一度きりのものでした。
クロージャに渡した値が、新しいスレッドへ移って、そこで使われる。
チャネルは、この所有権の移動を、スレッドが動いている間ずっと繰り返せるようにする仕組みです。
1つの流れが値を送り出し、別の流れがそれを受け取る。
送り出した側は、その値の所有権を手放す。
受け取った側が、新しい所有者になる。
スレッドを生成するときの一度きりの移動が、実行の途中で何度でも起こる形に広がる。
これは、第36章のmoveの延長です。
所有権を移して受け渡すという同じ考え方が、動き続ける流れの間の通信に使われる。
今日扱うのは、チャネルがどう所有権を運ぶのか、受け取る側がどう待つのか、
複数の送り手をどう束ねるのか、そして送る速さと受け取る速さをどう調停するのか、です。
感想
まだ感想はありません。最初の1件を書きましょう!
スクロール