gpt4 book ai didi

c# - 如何避免和预测内存不足异常

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:11:01 25 4
gpt4 key购买 nike

所以,如果我有一个 List<Bitmap> myBitmaps我应该在哪里存储来自数据库的大量位图 token ,它可能会出现内存不足异常,我该如何避免这种情况。

我应该在硬盘驱动器上存储一堆图片,而不是在第一批处理后加载另一批图片等

另一种情况是,如果我加载一个 Base64 并针对大量数据编码为 String 和 String 为 Base64,我如何在不导致内存不足异常的情况下实现它,以及我如何预测是否会出现内存不足两种情况下的内存异常。

PS:如果有人提供解决方案,请解释它是否会降低性能以及原因。

最佳答案

听上去,Bitmaps 似乎很大,将它们全部存储在内存中是不切实际的。如果您正在对其进行批量操作,那么交换到磁盘肯定会导致性能下降,但考虑到在现实世界中您正在使用硬件限制,因此没有其他选择。

您可以将有关位图的某些元数据缓存在内存中以加速操作。另一种选择是将整个位图缓存在内存中,并在核心内存中没有数据时转到磁盘。

具体缓存哪些将再次取决于使用模式。也考虑使用 WeakReference

大数据的 Base64 转换可以简单地转换为 online algorithm。 ,一次转换少量数据。

关于c# - 如何避免和预测内存不足异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7877329/

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