RT 友好又是怎么定义的呢?(纯小白)
1
ClericPy 2019-10-21 02:23:32 +08:00 1
我还以为你要问怎么用 select + timeout 的情况下优雅停止 goroutine...
还真没去想过 chan 要我关... |
2
ClericPy 2019-10-21 02:25:15 +08:00
搜了一把, 还真有优雅关闭 chan 的情况, 长见识了
|
3
wangking 2019-10-21 02:38:24 +08:00
要考虑的情景太多了,看的脑壳疼
|
4
catror 2019-10-21 05:03:13 +08:00 via Android 2
1. 只由 sender 来关闭
2. 一般不考虑关闭,除了一种情况:receiver 必须知道 sender 已经停止发送了 |
5
javapythongo 2019-10-21 09:46:16 +08:00
感觉一般不太需要关闭
|
6
reus 2019-10-21 12:13:38 +08:00
谁发送谁关闭
|
7
kid1412621 2019-10-21 12:13:48 +08:00
我还以为你说的是 4chan
|
8
reus 2019-10-21 12:15:34 +08:00 1
如果有多个发送者,就用一个 sync.WaitGroup,每次增加发送者时 Add,发送者结束时 Done,最后在需要关闭的时候 Wait 完再 close。通知发送者结束可以用 context.Context.Done
|