【发布时间】:2021-11-17 09:54:18
【问题描述】:
我知道缓冲区的大小可以在应用程序性能中发挥重要作用,但是定义缓冲区大小的最佳方法是什么?调整大小时我应该考虑什么?
类似于“最佳实践”的东西
【问题讨论】:
-
至少给出一些用例。
-
这取决于用例。通道的许多用途都与无缓冲通道一起使用。
-
最佳实践是:0 用于同步的无缓冲通道)。 1:当您想要分离发送和接收时,即从 1 中删除同步。 N>1:如果您有强烈的论据表明 N 是 that 特定用例的正确值。请注意,如果通道的缓冲区容量“在 [...您的] 应用程序性能中起重要作用”,那么您的设计就有问题。
-
另外,您调整缓冲区大小以防止读者挨饿,等待一些数据到来。