Asincronismo de la bd sqlite

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Asincronismo de la bd sqlite

Jaume Tugores
Resulta que en el programa de la app tengo una linea que llama a una función en la clase de la basedatos que lo que hace es dar un registro de alta y me devuelve la clave del registro para más adelante poder editar este registro, resulta que la linea que llama a esta función, no espera a que la bd termine el trabajo para devolver la clave del registro, sino que deja que la bd haga su trabajo y pasa a la linea siguiente sin que la bd haya terminado, este asincronismo, es lo natural en los móviles, (he leido), pero esto me crea unos problemas que aunque otras veces he podido resolver, esta vez no lo consigo. He probado a sacar la rutina que hace las llamadas a la bd, del hilo principal y lo he puesto en un intent Service, pero me hace lo mismo, solo se me ocurre el tener que reescribir la clase que hace el trabajo, sacarla de la clase de la base de datos y reescribirla en el mismo intent service, pero no me gusta la idea, es repetir el codigo y además un follón, no se como decirle al hilo principal que espere por ejemplo 1 segundo, a ver si ya habrá terminado la bd... 
Esto en un pc de sobremesa no ocurre, nunca se pasa a la linea siguiente si la actual no ha terminado...(que bien va así...)
Gracias.

--
Para participar es necesario que leas detenidamente las normas del grupo: https://goo.gl/xeTRQm
---
Has recibido este mensaje porque estás suscrito al grupo "desarrolladores-android" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a [hidden email].
Para publicar en este grupo, envía un correo electrónico a [hidden email].
Visita este grupo en https://groups.google.com/group/desarrolladores-android.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/desarrolladores-android/b4ac3836-8191-450a-8a84-e858ed029bb9%40googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.