xxjwxc/uber_go_guide_cn

对于channel的疑问

felix0080 opened this issue · 14 comments

不知如何理解
Channel 的指南
原文“channel 通常 size 应为 1 或是无缓冲的。默认情况下,channel 是无缓冲的,其 size 为零。任何其他尺寸都必须经过严格的审查。考虑如何确定大小,是什么阻止了 channel 在负载下被填满并阻止写入,以及发生这种情况时发生了什么。”

疑问:“是什么阻止了 channel 在负载下被填满并阻止写入” 阻止了被填满 阻止写入,是什么意思。。。

应该是之前翻译问题。稍等,我更新一下。谢谢反馈。

原文是这个:如果你有更好的翻译,请PR

Channels should usually have a size of one or be unbuffered. By default, channels are unbuffered and have a size of zero. Any other size must be subject to a high level of scrutiny. Consider how the size is determined, what prevents the channel from filling up under load and blocking writers, and what happens when this occurs.

channel 通常 size 应为 1 或是无缓冲的。默认情况下,channel 是无缓冲的,其 size 为零。任何其他尺寸都必须经过严格的审查。我们需要考虑如何确定大小,考虑是什么阻止了 channel 在负载和阻塞写入时被填满,以及当这种情况发生时系统逻辑有哪些变化。(翻译解释:按照原文意思是需要界定通道边界,竞态条件,以及逻辑上下文梳理)

大概更新成这样。是否能看得明白?

我正常的理解是,阻止channel的写入,而不是阻止channel被填满。也就是什么阻止了channe在高负载下和阻塞写时的写入

也就是对这个filling up 的翻译,是为被填满,还是填充

填满

阻止填满有问题啊,已经满了

你有更好的翻译吗?参考一下

阻止了channe在高负载下和阻塞写时的写入

channel 通常 size 应为 1 或是无缓冲的。默认情况下,channel 是无缓冲的,其 size 为零。任何其他尺寸都必须经过严格的审查。我们需要考虑如何确定大小,考虑是什么阻止了 channe 在高负载下和阻塞写时的写入,以及当这种情况发生时系统逻辑有哪些变化。(翻译解释:按照原文意思是需要界定通道边界,竞态条件,以及逻辑上下文梳理)

感谢反馈。希望您能提供一个PR上来。我更新到master。thx

好的,晚上弄一下

waiting for your PR.

我来更新掉您的PR。thx

好的,晚上弄一下

由于时间等待关系,我已经更新到master了,还望见谅。如果您有其它更好的翻译,还请提交PR,我们一起讨论共建。
本次issues 更新 commit:
a8dcc67

确认无误请关闭本次,issues。thx!

last:

Please feel free to fork and PR if you find any updates, issues or improvement.

Best wishes

谢谢,已经修改