Tengo UITableView
con cierto contenido, que se carga en asincrónico modo. Cuando el usuario gira el dispositivo, necesito hacer [tableView reloadData]
en el método -willRotateToInterfaceOrientation
. ReloadData funciona de manera asíncrona en mi caso.¿Cómo hacer que MainThread espere hasta que se realice alguna acción asíncrona?
Entiendo que reloadData funciona en el hilo principal, pero dispara cellForRowAtIndexPath, que funciona de manera asíncrona en mi caso.
Así que la pregunta es cómo hacer que el hilo principal espere hasta UITableView's reloadData
termina.
Entiendo que se llama a reloadData en el hilo principal. Pero realodData llama a cellForRowAtIndexPath ... y este método necesita cargar algunos datos asincrónicos. –
Veo, por lo que no está esperando que reloadData se complete, pero las tareas asíncronas que reloadData se apagan se completan. ¿Podrías modificar tu pregunta para reflejar esto? NSRunLoop sigue siendo lo que quieres, aunque no entiendo por qué quieres mantener el hilo principal como rehén mientras cargas de datos asíncronas. – NSProgrammer
Necesito un hilo principal para esperar reloadData, porque esto hará que la animación de rotación sea agradable. –