Lors de l'accès à une base de données au sein d'un AsyncTask
, la connexion à la base de données doit-elle être membre du parent Activity
ou ouverte/fermée au sein de chaque AsyncTask
? Si la connexion est un membre de l'activité, je crains que lors de la commutation entre les activités de mon application, il y ait la possibilité que la connexion à la base de données soit fermée avant que l'AsyncTask qui l'utilise soit terminée.AsyncTask accédant à la base de données - Où initialiser, fermer?
4
A
Répondre
2
Je n'ai jamais pensé à quelque chose, mais instinctivement, je ferais en sorte que l'AsyncTask soit aussi autonome que possible, c'est-à-dire qu'il gère ses propres opérations db en interne. La même chose s'applique à tout code enfilé.
EDIT: Voici un lien vers un bon article sur l'accès multiple à SQLite dans Android ... Android SQLite Locking
Questions connexes
- 1. Service accédant à une base de données
- 2. Service Web accédant à la base de données client
- 3. Où initialiser les données liées à l'extension
- 4. Liste des utilisateurs accédant à la base de données
- 5. C# Attributs personnalisés accédant à la base de données
- 6. Service ASP.net accédant à la base de données
- 7. Comment fermer l'activité de ASyncTask?
- 8. Oracle accédant à plusieurs bases de données
- 9. Rail3: Plugin fournisseur accédant à ma base de données serveur
- 10. laravel 4 fermer la connexion à la base de données
- 11. pourquoi fermer la connexion à la base de données
- 12. AsyncTask et base de données SQLite
- 13. L'utilisation AsyncTask avec base de données
- 14. Modèle de référentiel avec MongoDB: Où initialiser la base de données
- 15. Pourquoi toujours fermer la base de données Connexion à la base de données?
- 16. Entity Frame Work Base de données Initialiser
- 17. LINQ to SQL - Initialiser base de données
- 18. Comment initialiser une base de données MySQL?
- 19. L'activité est fermée lorsque AsyncTask utilise la base de données
- 20. AsyncTask qui accède à la base de données Sqlite provoque un plantage
- 21. Où initialiser onLongClickListener
- 22. Puis-je initialiser une base de données à partir d'un projet de base de données?
- 23. SpinnerButtonAdapter utilisant ASyncTask pour la sélection automatique à partir de la base de données
- 24. Où initialiser un NSMutableArray?
- 25. Exécution de plusieurs programmes Python simultanés accédant à la même table de base de données
- 26. C++ où initialiser const
- 27. Comment initialiser correctement la base de données dans Spring MVC?
- 28. Où est la base de données heroku?
- 29. Où est la base de données SQL?
- 30. sqlite force fermer après ouverture de la base de données
La base de données SQLite contestait avoir plusieurs connexions ouvertes? Par exemple, si deux asyncTasks sont générés simultanément. –
@Karl H: Les bases de données sont conçues pour avoir plusieurs connexions, bien que vous deviez faire attention si plus d'une opération d'écriture est en cours, ce qui peut impliquer le même 'sous-ensemble' de données. J'avoue que je n'ai pas beaucoup fait avec l'implémentation Android de SQLite mais j'utilise depuis quelques temps la version Windows de SQLite sans problème. – Squonk
@Karl H: J'ai édité ma réponse pour inclure un lien vers une discussion sur l'accès multiple à SQLite sur Android - j'espère que c'est utile. – Squonk