转:

使用NSData读取数据,采用NSData的dataWithContentsOfFile:方法。不少人反馈说如果直接使用,将会耗尽iOS的内存。

其实这个是可以改善的。

NSData还有一个API:

+ (id)dataWithContentsOfFile:(NSString *)path options:(NSDataReadingOptions)readOptionsMask error:(NSError **)errorPtr; 其中NSDataReadingOptions可以附加一个参数。NSDataReadingMappedIfSafe参数。使用这个参数后,iOS就不会把整个文件全部读取的内存了,而是将文件映射到进程的地址空间中,这么做并不会占用实际内存。这样就可以解决内存满的问题。

相关文章:

  • 2022-12-23
  • 2021-12-10
  • 2021-07-12
  • 2021-09-18
  • 2021-10-01
  • 2021-08-06
  • 2022-02-22
猜你喜欢
  • 2022-12-23
  • 2021-08-07
  • 2021-10-20
  • 2021-09-30
  • 2022-01-02
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案