写入大文件并挂起

Writing large files and suspend

在我们的 windows 商店应用程序中,我们将用户创建的文件保存在 epub 文件中,这是一个文件扩展名为 .epub 的 zip 存档 该应用程序主要使用 HTML 和 JS 编写,但为了处理写入 zip 存档,我们在帮助程序中使用了一些 C#。

一切正常,但我发现如果应用程序在写入 zip 时挂起,zip 存档可能会损坏,有时在将特别大的文件添加到 zip 时,比如 100mb 的视频文件,操作未在 oncheckpoint 允许的 5 秒内完成。

有什么方法可以避免这个问题吗?据我所知,没有办法将大文件写入 zip 并 100% 确定如果应用程序挂起它不会损坏。

我同意你的看法,没有办法将大文件写入 zip 并 100% 确定如果应用程序挂起它不会损坏。 据我所知,当一个App被挂起时,该应用所拥有的内存是不会被释放的,所以不用担心挂起时内存会丢失数据。 您需要担心的是用户在数据持久存在之前退出了应用程序。 但一些额外的设计可能会改善一些用户体验并避免数据丢失。

自动保存

例如,当对象被用户更改时,持久化更改。

显示用户保存进度

使用进度UI让用户知道保存正在进行中,he/she如果退出应用程序将丢失数据。