gpt4 book ai didi

c# - 大型数据集的内存消耗

转载 作者:行者123 更新时间:2023-11-30 20:06:53 25 4
gpt4 key购买 nike

我有一个 .net winform c# 程序。我使用我自己的跟踪系统收集我的程序的跟踪。跟踪显示有关用户做了什么的信息和其他有用的信息。我将每条轨迹存储在数据集中。举个例子,我每秒在数据集中添加一行。程序仅在程序遇到未处理程序异常或程序关闭时才处理痕迹。

问题是:数据集在内存中开始变得非常大,如果程序运行足够的时间,就会出现内存不足的异常。

我在网上搜索并找到了一些想法。 - 将数据集放在硬盘上的文件中(在这种情况下,每次我想添加跟踪时我都必须打开一个大文件) - 分页数据集

我必须找到一种方法来释放该数据集所使用的内存,方法是保留它包含的所有信息,并且还要设法向该数据集添加额外的行。

有人有想法或指导吗?谢谢

最佳答案

您可以将数据集的内容保存到磁盘(每小时在其自己的文件中)、清除内存中的数据、在内存中运行一个小时、将数据保存到单独的文件中等等。

这样你的内存消耗应该没问题,你的性能每小时只会受到一次影响。

由于磁盘上的文件都具有相同的结构,只要您需要“完整数据”,就可以合并它们。

虽然我会推荐使用一些现有的日志库 - 有很多经过良好测试的库(免费和商业)。

关于c# - 大型数据集的内存消耗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9218767/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com