FIFO 缓冲区最终会停滞吗?

问题描述 投票:0回答:2

下图描述了 FIFO 缓冲区:

所以当写入 FIFO 缓冲区的数据速度比读取数据的速度快时,缓冲区就存在了。

但我不明白一件事。经过一定时间后,最终 FIFO 缓冲区的所有空闲缓冲区是否都会耗尽?因为写入速度比读取速度快。

如果它会停滞不前,那么使用它的目的是什么?

fifo
2个回答
0
投票

鉴于没有可讨论的实现,这都是理论上的。所以,是的,根据资源以及生产和消耗的速度,缓冲资源可能会耗尽。

缓冲区耗尽的结果取决于那里的实现和可能的设置。

缓冲不会使消费更快,但它允许消费者不那么紧急地处理传入的数据,从而允许爆发性的生产和/或消费。


0
投票

FIFO是处理数据的抽象描述。如何处理边缘情况和限制的确切细节是实现细节。特定的实现可能会阻止进一步的输入,直到缓冲区中有更多空间,或者它可能会在缓冲区满后忽略所有内容,或者可能会失败/终止并显示错误消息。这完全取决于实施。

© www.soinside.com 2019 - 2024. All rights reserved.