Golang 中状态和结果总结

操作 通道状态 结果
Read nil 阻塞
打开且非空 读取到值
打开且空 阻塞
已关闭(Closed) <初始空值>
只能写入 编译错误
Write nil 阻塞
打开且满 阻塞
打开且非满 写入成功
已关闭(Closed) panic
只能接收 编译错误
close nil panic
打开且非空 关闭 channel,读取成功,直到通道耗尽,然后读取到默认空值
打开但空 关闭 channel, 读取到默认空值
已关闭(Closed) panic
只能接收 编译错误
close nil panic
打开且非空 关闭 channel,读取成功,直到通道耗尽,然后读取到默认空值

你可能感兴趣的:(Golang 中状态和结果总结)