c# - 将 zip 文件转换为内存流会引发 Out of Memory 异常
问题描述
我正在创建一个 Azure 函数,它将解压缩一个充满 .csv 文件的 zip 文件、解析内容并将数据保存到数据库中。我被困在第一步:解压缩一个 zip 文件。
在阅读了许多其他线程(包括Azure downloadtostreamasync method hangs)之后,这就是我所拥有的:
public async static Task<MemoryStream> GetMemoryStreamAsync(CloudFile inBoundfile)
{
MemoryStream memstream = new MemoryStream();
await inBoundfile.DownloadToStreamAsync(memstream).ConfigureAwait(false);
return memstream;
}
我正在测试的 zip 文件是 515,069KB。调用该方法时,它似乎只是挂起,但最终会引发 Out of Memory 异常。.ConfigureAwait(false)
我也尝试过非异步(抛出相同的错误)并且我尝试过不带directory corrupt
. )。
哦,我还发现了一个线程说将 Azure 应用程序设置为 64 位,我做到了。
必须有一个解决方案,但我没有找到它!
解决方案
推荐阅读
- javascript - JavaScript - window.open 不能在 Firefox 移动 iOS 上运行?
- javascript - 如何在 Javascript 中通过 FormData 发布带有图像的多个对象?
- amazon-web-services - AWS 许可证管理器 - 如何禁用已授予的许可证
- ruby-on-rails - 安装 Rails 时遇到问题
- reactjs - 如何在使用 reactQuill 组件时自定义 'image' 标签的宽高和样式?
- html - Angular - 自动完成效果不佳
- swift - 如何将文本字段值从一个 ViewController 传递到第二个 ViewController (MacOS Swift)?
- sql - 基本 SQL 问题:显示多行的单个结果
- django - Django UNIQUE 约束失败:accounts_users.email
- rounding - GMP 将最后一位设置为零