timeout
创建一个在一段时间后拒绝的promise
246 bytes
since v12.3.0
使用方法
timeout 函数创建一个在指定延迟后拒绝的 promise,可以选择自定义错误消息或错误函数。
默认错误是消息为”Operation timed out”的 TimeoutError。
import * as _ from "radashi";
// 1秒后以默认TimeoutError拒绝await _.timeout(1000);
// 1秒后以自定义TimeoutError消息拒绝await _.timeout(1000, "Custom timeout message");
// 1秒后以自定义错误类型拒绝await _.timeout(1000, () => new Error("Custom error"));与 Promise.race 的示例
使用 _.timeout 与 Promise.race 为异步操作设置超时是最有用的方式之一。
import * as _ from "radashi";
const someAsyncTask = async () => { await _.sleep(10_000); return "Task completed";};
// 异步任务与1秒超时之间的竞争await Promise.race([someAsyncTask(), _.timeout(1000, "Task took too long")]);