And*_*kis 2 objective-c multitasking
我正在构建一个多任务应用程序,其中包括查看大型pdf文件的功能.为了避免每次用户想要查看文件时下载文件,我在NSTemporaryDirectory中下载文件并使用UIDocumentInteractionController提供"快速查看"和"在iBooks中打开".
我希望在用户退出应用程序时清除所有临时文件,以避免占用用户设备上的空间.由于我的应用程序是多任务处理而且我的applicationWillTerminate方法永远不会被调用,因此永远不会删除这些文件.什么时候最好清除NSTemporaryDirectory,我该怎么做?我错过了什么吗?
提前致谢
你可以使用一个在iOS上运行良好的旧UNIX技巧(我知道,因为我使用它):
结果是,只要您不关闭文件,文件就会保持打开状态.但是他们的目录条目已经消失,即文件不再显示在列出的目录中.现在很酷的是,只要你关闭其中一个文件描述符,相应的文件就会自动从磁盘中完全删除.无论您是明确地调用close它们还是应用程序终止或崩溃都无关紧要,在所有这些情况下,操作系统都会删除这些文件,您无需担心它.
缺点是您需要更改代码,以便它可以与文件描述符一起使用,因为您无法再按名称访问文件.
| 归档时间: |
|
| 查看次数: |
3145 次 |
| 最近记录: |