Estoy usando [[NSUserDefaults standardUserDefaults] synchronize]
cada vez que escribo algo en la lista. Es eso exagerado? ¿O hay efectos adversos al hacer esto?Mejor práctica para NSUserDefaults sincronizar
Respuesta
Sí, puede ser exagerado pero en una aplicación simple ¿notará un golpe de rendimiento? probablemente no solo si solo está guardando después de la interacción básica del usuario, como que el usuario seleccione su configuración. El beneficio de llamar a la sincronización más a menudo es si su aplicación puede fallar y la información que está guardando es importante, de lo contrario, iOS se la guardará periódicamente.
Gracias por la información. –
El método de sincronización, que se invoca automáticamente a intervalos periódicos, mantiene la memoria caché en memoria en sincronización con la base de datos predeterminada de un usuario.
Llamada con frecuencia puede causar problemas de rendimiento, pero no es una exageración si se trata de una pequeña aplicación (como ya se mencionó) O si realmente necesita su plist estar al corriente de los cambios realizados en el hilo actual o cambios realizados en otro hilo en la aplicación.
Debido a que este método se invoca automáticamente a intervalos periódicos, utilizar este método sólo si no se puede esperar a que la sincronización automática (por ejemplo, si la aplicación está a punto de salir) o si desea actualizar los valores predeterminados del usuario a lo que está en el disco aunque no haya realizado ningún cambio
Probablemente el único efecto adverso que observe es una disminución insignificante en el rendimiento.
- 1. ¿Es malo sincronizar NSUserDefaults en - (void) dealloc?
- 2. ¿Puedo utilizar iCloud para sincronizar el archivo plist NSUserDefaults
- 3. ¿Existe una práctica estándar para sincronizar tablas de SQL Server?
- 4. mejor práctica para usar scala inmutable Queue
- 5. ¿La mejor práctica para dependencias en #defines?
- 6. NHibernate - Mejor práctica para simplemente seleccione
- 7. Mejor práctica para la funcionalidad 'me gusta'
- 8. ASP.NET: mejor práctica para redirigir a https
- 9. jQuery: ¿Mejor práctica para poblar desplegable?
- 10. mejor práctica para RESTO booleano resultados
- 11. Mejor práctica para almacenar cadenas multilingües
- 12. para la mejor práctica de bucle
- 13. ¿La mejor práctica para el patrón DAO?
- 14. Mejor práctica del comparador
- 15. Release Management: mejor práctica
- 16. Métodos anidados, mejor práctica
- 17. cmake mejor práctica
- 18. Mejor práctica de clase
- 19. La mejor herramienta para sincronizar bases de datos MySQL
- 20. Mejor práctica: Organizar pruebas unitarias
- 21. JavaScript y Eventos - Mejor Práctica
- 22. referencia o devolución: mejor práctica
- 23. Java JSON serialization: mejor práctica
- 24. Mejor práctica de dependencia circular
- 25. Mejor práctica: prueba vs rescate
- 26. Diseño de SVN: mejor práctica
- 27. WSDL - sin entrada - mejor práctica
- 28. PHP - La mejor práctica para pasar variables para incluir archivos
- 29. kwargs mejor práctica de análisis
- 30. NSUserDefaults restablecen
Estoy bastante seguro de que lo auto-enjuaga cuando el programa "se siente así". Sé que es un poco vago, pero funciona. Debería considerar buscar NSUserDefaultsController en su lugar. – alexy13