gpt4 book ai didi

objective-c - Cocoa中如何按扇区读取文件而不依赖操作系统缓存

转载 作者:行者123 更新时间:2023-12-03 17:40:10 26 4
gpt4 key购买 nike

我有任何问题:如果Mac缓存文件内容,如何按扇区读取任何文件,而不依赖于Cocoa中的操作系统缓存。我使用 initWithContentsOfURL:_fileURL options:NSUncachedRead error:NULL ,对吗?感谢您的回答。

最佳答案

标志NSDataReadingUncached(或其已弃用的同义词,NSUncachedRead)向操作系统暗示不应将文件添加到缓存中。它们可用于防止将大的、不重要的文件添加到缓存中并从页面缓存中逐出其他更重要的数据。并注意“提示”一词:操作系统可以随意忽略提示。

您实际上想要实现什么目标?

操作系统确保缓存包含与磁盘相同的数据,因此无论从缓存读取还是从磁盘读取,都将始终获得相同的数据。唯一的区别是性能。所以我最好的猜测是您一定正在尝试编写存储基准测试。

解决方案

您可以通过运行purge命令刷新缓存(您可以使用NSTask来执行此操作)。这会刷新整个磁盘缓存,因此会使您的计算机变得非常慢,直到缓存再次预热。

这只适用于 OS X。我没有适用于 iOS 的解决方案。

关于objective-c - Cocoa中如何按扇区读取文件而不依赖操作系统缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18222319/

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