Používam aplikáciu CoreData v mojej aplikácii s trvalým uložením typu NSInMemoryStoreType
.
Je potrebné niekedy zavolať NSManagedObjectContext save:
s týmto typom obchodu? Prechádza save:
na NSManagedObjectContext
vlastne robiť čokoľvek pre obchody v pamäti?
Dokumentáciu spoločnosti Apple jednoducho uvádza:
Ušetríte:
Pokúšajú sa zapísať neuložené zmeny registrovaných objektov do trvalého ukladania.
Čo to vlastne znamená v kontexte obchodu v pamäti?
odpovede:
4 pre odpoveď č. 1Nedokázal som nájsť žiadnu dokumentáciu, ale som si istý, že je stále potrebné.
Core Data
má rozhranie v pamäti (reprezentované kontextom spravovaného objektu) a trvalý backend ("store"). Pretrvávajúci backend je zvyčajne súbor, ale môže sa len zdržiavať v pamäti NSInMemoryStoreType
.
Pre všetky Core Data
fungovanie, obe časti musia byť oddelené a tlačiť z frontend (čakajúce zmeny) na backend (pretrvávajúce dáta) prostredníctvom save
Prevádzka.
Upozorňujeme, že v jednom obchode (backend) môže existovať niekoľko kontextov spravovaných objektov (frontend) a každá z nich má odlišné čakajúce zmeny. Všimnite si, že existujú metódy ako hasChanges
a a NSUndoManager
na každom kontexte spravovaných objektov. Stále funguje s pamäťou v pamäti.
Niektoré informácie tiež tu
1 pre odpoveď č. 2
save:
vykonáva overovanie atribútov a vzťahových obmedzení.