c# - 在 C# 中操作关键流缓冲区的最有效和可靠的方法是什么?

标签 c# caching buffer

我正在用 c# 开发一个应用程序,它处理来自缓冲区之类的队列的大量传入和传出数据。缓冲区需要是磁盘中的某种文件。数据将经常写入缓冲区(我说的是每 10 毫秒一次!)。每个写入的数据将在缓冲区中生成 1 条记录/行。

同一程序还将读取缓冲区(逐行)并处理缓冲数据。处理完一行/记录后,缓冲数据必须立即从缓冲文件中删除该行/记录,以防止在系统重启时重新处理缓冲数据。这种读取和删除也将以非常快的速度完成(比如每 10 毫秒左右)。

因此,它就像一个系统,可以写入、读取和清除已读取的内容。如果程序决定不处理缓冲数据,这个缓冲区可能会增长到 5GB (GIGABYTE),这会变得更加困难。

**所以我的问题是:我应该用什么样的方法来处理这个缓冲机制?我看过使用 SQlite 和简单的文本文件,但它们在处理大文件时可能效率低下,或者在处理并发插入、读取和删除时可能不太好。

无论如何,非常感谢任何建议。预先感谢您给出的任何答案!**

最佳答案

关于c# - 在 C# 中操作关键流缓冲区的最有效和可靠的方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15171556/

相关文章:

c# - 可转位接口(interface)

c# - 一个委托(delegate)支持不带参数和带参数的函数

javascript - 在缓存页面上触发 Javascript?

c# - C# 中的 CircularBuffer IDictionary?

c# - 数据适配器更新命令

c# - 使用 LINQ 在类中查找对象

php - 使用缓存系统进行 session 存储?

caching - 如何在运行时在 Application.conf 中添加条目?

c - 打印包的十六进制值

vim - 如何同时操作更多的 Emacs 缓冲区?