2016-04-06 10 views
0

Günlük kaydını tamamen kapatmak için sqlite gönderilecek seçeneklerin sihirli birleşimi nedir.RestKit Swift'de WAL dosya modunu kapatın

Yüklemede bir çok veriyi indiren bir başlatma var. Bu noktada numaralı günlüğe kayıt yaptırmaya ihtiyacım yok ve 500MB'a kadar yüklendikten sonra bellek deposunu balonluyor!

denedim:

var options = Dictionary<NSObject, AnyObject>() 
options[NSMigratePersistentStoresAutomaticallyOption] = true 
options[NSInferMappingModelAutomaticallyOption] = true 
options[NSSQLitePragmasOption] = ["journal_mode" : "TRUNCATE”] 

veya

options[NSSQLitePragmasOption] = ["journal_mode" : “OFF"] 

veya

options[NSSQLitePragmasOption] = ["journal_mode" : “DELETE”] 

ve

options[NSSQLiteManualVacuumOption] = true 

bile tarafından

options[NSSQLitePragmasOption] = ["journal_size_limit" : "20000”] 

:

do { 
        _ = try 
         self.managedObjectStore!.addSQLitePersistentStoreAtPath(storePath, fromSeedDatabaseAtPath: nil, withConfiguration: nil, options: options) 
       } catch let error as NSError { 
        print("fail to add persistent store") 
        print(error) 
       } 

Hiçbir şey beni tamamen bu kapatmasına izin ver gibi görünüyor. WAL dosyası her zaman büyür.

cevap

0

Neredeyse sadece küçük düzeltme

var options = Dictionary<NSObject, AnyObject>() 
    options[NSMigratePersistentStoresAutomaticallyOption] = true 
options[NSInferMappingModelAutomaticallyOption] = true 
options ["journal_mode" ] = "DELETE” 
vardı
İlgili konular