gpt4 book ai didi

ios - 停止 NSURLRequest 写入缓存

转载 作者:行者123 更新时间:2023-11-29 02:37:14 25 4
gpt4 key购买 nike

我有一个 iOS 应用程序,它使用 NSURLRequest 每秒发送数百个 HTTP 请求。它总是通过 WiFi,所以性能很好,并且每次响应的内容都不同,所以我通过 NSURLRequestCachePolicy.ReloadIgnoringLocalCacheData 禁用了缓存:

let request = NSURLRequest(URL: requestURL,
cachePolicy: .ReloadIgnoringLocalCacheData, timeoutInterval: 0.1)

但是,NSURLRequest 仍在将数据写入磁盘 — 仅几分钟内就写入了数百兆字节。

这尤其令人担忧,因为我的应用程序用于数据监控,可能会一次运行几个小时——NSURLRequest 每秒写入磁盘数百次……我担心闪存会耗尽在这些条件下,即使我认为它具有磨损均衡。

如何阻止 NSURLRequest 将缓存数据写入磁盘?

最佳答案

NSURLRequest 的缓存策略只控制是否以及如何读取缓存,而不是是否写入下载的数据。

如果您将 NSURLRequestNSURLSession 一起使用,请实现
委托(delegate)中的 URLSession(_:dataTask:willCacheResponse:completionHandler:)
方法,并使用 nil 参数调用 completionHandler。

如果您使用 NSURLConnection,类似的委托(delegate)调用会起作用;见this question了解详情。

关于ios - 停止 NSURLRequest 写入缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26208991/

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