chan
不带缓存
make(chan 数据类型)
进和出都会阻塞.
读和写同时存在,才会同时退出阻塞。如果只有读或者只有写,则会阻塞。
带缓存
make(chan 数据类型,长度)
先进先出队列, 出会一直阻塞到有数据, 进时当队列未满不会阻塞, 队列已满则阻塞.
for{
item, ok := <-chan
if(!ok) {
return;
}
......
}
foritem :=rangechan{
......
}
不带缓存
make(chan 数据类型)
进和出都会阻塞.
读和写同时存在,才会同时退出阻塞。如果只有读或者只有写,则会阻塞。
带缓存
make(chan 数据类型,长度)
先进先出队列, 出会一直阻塞到有数据, 进时当队列未满不会阻塞, 队列已满则阻塞.
for{
item, ok := <-chan
if(!ok) {
return;
}
......
}
foritem :=rangechan{
......
}
本文标题:chan
本文链接:https://www.haomeiwen.com/subject/ldyreqtx.html
网友评论