Saltar al contenido

22 · Expresiones Temporales

Sleep

Pausa la ejecución con `sleep <dur>` o `sleep(<dur>)` — cooperativo, cede el control al scheduler.

En esta página

sleep suspende la corrutina actual durante el tiempo indicado. Durante la pausa, el scheduler puede ejecutar otras tareas — es cooperativo, no bloqueante.

Existen dos formas equivalentes: la forma keyword (sleep 50ms) y la forma función (sleep(pausa)). Usa la forma función cuando la duración proviene de una variable.

Forma keyword y forma función; sleep 0ms cede el control por un tick sin esperar.

04-sleep.zolo
Playground
// Feature: sleep for a duration
// Syntax: two forms — keyword `sleep <dur>` and function `sleep(<dur>)`
// When to use: pause execution of the current coroutine. Cooperative:
// other scheduler tasks may run while you sleep.

print("before")

// Keyword form — direct, no parentheses.
sleep 50ms

print("middle")

// Function form — useful when the duration comes from a variable.
let pause = 30ms
sleep(pause)

print("after")

// expected:
// before
// middle
// after

// Yield to the scheduler with `sleep 0s` — hands over control for one tick.
sleep 0ms
print("one tick later")

// expected: one tick later

// Function form again — useful from a builtin context.
print("before final sleep")
sleep(20ms)
print("after final sleep")
// expected:
// before final sleep
// after final sleep

sleep 0ms es útil para ceder el scheduler — garantiza que otras corrutinas tengan la oportunidad de ejecutarse sin introducir ningún retraso real.

Índice global

Encuentra tu camino por Zolo

Prueba una idea

Empieza aquí

9 resultados

9 resultados

enespt-br