AD

¿Ya dominas lo básico? Un curso estructurado de Objective-C es la vía rápida para dar el salto.

Ver cursos de Objective-C en Udemy

Enlace de afiliado. No te cuesta nada extra.

🍎Lecciones de Objective-C
Lección 56 / 68

Esperar un tiempo determinado

En esta lección pausarás el programa durante unos segundos.

[NSThread sleepForTimeInterval:1.0] detiene la ejecución el tiempo indicado, en segundos y con decimales.

El código de ejemplo imprime un mensaje, espera y luego imprime otro.

Lo esencial es que esto bloquea el hilo entero. En una aplicación de iPhone, hacerlo en el hilo principal congela la interfaz: no responde a toques ni se redibuja, y si dura lo suficiente el sistema muestra el diálogo de que la aplicación no responde.

La forma correcta de programar algo para más tarde sin bloquear es dispatch_after de Grand Central Dispatch, que entrega un bloque a una cola para que se ejecute pasado un tiempo mientras el hilo sigue atendiendo otras cosas. Es la herramienta que hay que conocer aquí.

Tampoco es un temporizador preciso: garantiza al menos ese tiempo, no exactamente ese tiempo.

Donde la espera sí tiene sentido es en los reintentos con espera creciente: 1 segundo, luego 2, luego 4, para no hundir un servicio que intentaba recuperarse.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar Objective-C directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)