2015-03-25 40 views
0

我正在使用以下代码来整合我的Core Data sqlite存储文件,这些文件当前由数据库本身,一个-wal和一个-shm文件组成。我这样做,所以我可以使用NSFileManager作为单个文件操作它。为什么在journal_mode DELETE中不删除Core Data shm文件?

NSPersistentStoreCoordinator *tmpPSC = [[NSPersistentStoreCoordinator alloc] 
     initWithManagedObjectModel...]; 

NSDictionary *options = @{NSSQLitePragmasOption: 
         @{@"journal_mode": @"DELETE"}}; 

NSPersistentStore *persistentStore = [tmpPSC 
    addPersistentStoreWithType:NSSQLiteStoreType configuration:nil 
    URL:storeURL options:options error:NULL]; 

if (persistentStore) { 
    [tmpPSC removePersistentStore:persistentStore error:NULL]; 
    tmpPSC = nil; 
} 

然而,上面的代码执行后,我看到了-wal文件中消失,但-shm文件仍然存在。

任何想法为什么这是这样吗?

回答

相关问题