|
|
1
23
|
|
|
2
4
当(可能)仍然通过使用另一个goroutine保证交付时,您总是可以避免阻塞:
当然,这只是使用goroutine调度程序作为通道的替代缓冲区,这可能是明智的,也可能不是明智的。 |
|
3
0
具有
Go 1.17
,
the tool
|
|
|
4
0
因此,这并不能直接解决问题,因为它需要一个无缓冲的通道,但如果您只想让它在发送时不被阻止,那么这就是我想到的:
您只需输入一个比预期大的数字。如果您事先不知道最大容量,那么此解决方案可能不适合您。 还要记住,go急切地分配通道,所以要小心内存使用。 |
|
|
farhandika zahrir · Golang通道没有关闭 1 年前 |
|
vtm11 · Python样式生成器实现为通道:过早读取 2 年前 |
|
|
Lukas Müller · 如何以“池化”方式使用无缓冲的go通道 2 年前 |
|
|
Pablo Matias Gomez · 如何在Golang定义零通道 2 年前 |
|
|
Wooram Jung · 如何在Android O中动态更改通知声音 7 年前 |
|
|
Sridhar · 如何实现对无缓冲通道的非阻塞写入? 7 年前 |