Tag: mmap

iOS中的内存映射文件的数量是否有实际的限制?

我有一个应用程序,可能有数百内存映射,即mmap() ,在任何时间点打开的文件。 我正在寻找一些帮助,理解什么,如果有的话,实际限制是在打开的内存映射文件的数量是。 我创build这些mmap文件,如: void* map = mmap(0, *capacity, PROT_READ | PROT_WRITE, MAP_SHARED, file, 0);

替代NSData弃用dataWithContentsOfMappedFile

所以+(id)dataWithContentsOfMappedFile:(NSString *)path显然是从iOS 5.0弃用。 这听起来像我应该避免使用它,但是我应该使用什么呢? 我正在使用mmap来创build内存映射文件,它与iOS5一起工作,但在iOS6中,有一些错误,因为一旦我尝试更新或读取缓冲区时,就会收到错误。 int fd = open(path, O_RDWR); off_t offset = 0; snapshotData = mmap(NULL, size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, offset); close(fd);