Estoy usando CoreData en mi aplicación, con un almacén de tipo persistente NSInMemoryStoreType
.
¿Alguna vez es necesario llamar NSManagedObjectContext save:
¿Con este tipo de tienda? Hace pasar save:
a NSManagedObjectContext
en realidad hacer cualquier cosa para las tiendas en memoria?
Documentación de Apple simplemente declara:
salvar:
Intenta confirmar los cambios no guardados en los objetos registrados en su almacén persistente.
¿Qué significa esto realmente en el contexto de una tienda en memoria?
Respuestas
4 para la respuesta № 1No pude encontrar ninguna documentación pero estoy seguro de que todavía es necesaria.
Core Data
tiene un frontend en memoria (representado por un contexto de objeto gestionado) y un backend persistente ("almacén"). El backend persistente suele ser un archivo, pero solo puede residir dentro de la memoria para NSInMemoryStoreType
.
Por todo el Core Data
Para que funcionen, las dos partes deben estar separadas y se empuja desde el frontend (cambios pendientes) al backend (datos persistentes) a través de save
operación.
Tenga en cuenta que puede haber varios contextos de objetos gestionados (frontends) para la misma tienda (backend) y cada uno de ellos tiene diferentes cambios pendientes. Tenga en cuenta que hay métodos como hasChanges
y un NSUndoManager
en cada contexto de objeto gestionado. Todavía funciona con una tienda en memoria.
Alguna informacion tambien aquí
1 para la respuesta № 2
save:
Realiza la validación de atributos y restricciones de relación.