0

我有一个程序可以以800 Mb/s 的速度从网络接口累积流量。本程序由Delphi开发,也是32位平台(Delphi不支持64位架构)。我在内存(RAM)上写入接收日期,过了一会儿(未知,取决于接收到的数据),将接收到的数据块(未知大小,取决于接收到的数据)写入硬盘并释放内存(RAM) .

当我运行应用程序时,一段时间后,它会抛出“内存不足”异常。我应该怎么做才能防止这种异常?

4

1 回答 1

0

这是一个非常高的数据速率——我假设它是 Mbits(100 MBytes/秒)。只有最快的 SSD 才能跟上,而且前提是您的编程效率为 100%。查看顺序写入速度表:http ://www.anandtech.com/storage/showdoc.aspx?i=3702&p=9

如果您可以在问题上投入更多 RAM,我建议您进入 64 位模式并一次性分配整个 RAM 缓冲区。

于 2010-01-25T23:19:10.403 回答