Sleep y timeout en JavaScript
Una promesa que se resuelve tras una espera, más el timeout que compite contra ella.
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
async function withTimeout(promise, ms) {
const timeout = sleep(ms).then(() => {
throw new Error(`timed out after ${ms}ms`);
});
return Promise.race([promise, timeout]);
}
Palabras clave y builtins usados aquí
Promiseasyncconstfunctionreturnthrow
El intento, en números
- Líneas
- 8
- Caracteres a escribir
- 245
- Tokens
- 74
- Ritmo de tres estrellas
- 105 tpm
Al ritmo de tres estrellas de 105 tokens por minuto, este intento toma unos 42 segundos.
Paso 3 de 3 en Planificación; paso 14 de 19 en Promesas y async.