AD

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

Ver cursos de Ruby en Udemy

Enlace de afiliado. No te cuesta nada extra.

💎Lecciones de Ruby
Lección 56 / 68

Esperar un tiempo determinado (sleep)

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

sleep(1) detiene la ejecución un segundo. Acepta decimales, así que sleep(0.5) espera medio segundo.

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

Lo que hay que entender es que sleep bloquea el hilo entero. En un servidor web eso significa que ese proceso no atiende a nadie mientras duerme. Poner un sleep dentro del código que responde a una petición es una forma directa de agotar la capacidad del servidor.

Tampoco es un temporizador preciso: garantiza al menos ese tiempo, no exactamente ese tiempo. El sistema operativo puede tardar algo más en devolver el control.

Donde sí tiene sentido es en los reintentos con espera creciente. Cuando una API externa responde con un error temporal, se reintenta esperando 1 segundo, luego 2, luego 4. Esa espera progresiva evita que muchos clientes vuelvan a la vez y hundan el 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 Ruby 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)