go言語学習の:chan
386 ワード
chanって何?
変数ですが、この変数は少し特殊です.作成後、設定しないと、読む場所がブロックされます.
このような特性によりgoroutineの通信が実現された.
バッファメカニズム
後ろの1024はバッファの大きさを指し、書くときはバッファが遅くなければ書きます.書き込み操作がブロックされません.
select
一連のファイルハンドルをモニタしますが、1つが変化すると戻ります.
変数ですが、この変数は少し特殊です.作成後、設定しないと、読む場所がブロックされます.
このような特性によりgoroutineの通信が実現された.
バッファメカニズム
c := make(chan int , 1024)
後ろの1024はバッファの大きさを指し、書くときはバッファが遅くなければ書きます.書き込み操作がブロックされません.
select
一連のファイルハンドルをモニタしますが、1つが変化すると戻ります.
select{
case <-chan1:
case chan2<-1:
default:
}