您可以使用 Deno.signal() 函數(shù)來處理系統(tǒng)信號。 for await (const _ of Deno.signal(Deno.Signal.SIGINT)) { console.log("interrupted!"); } Deno.signal() 也是一個(gè) promise。 await Deno.signal(Deno.Signal.SIGINT); console.log("interrupted!"); 如果您想要停止監(jiān)控信號,可以使用信號對象的 dispose() 方法。 const sig = Deno.signal(Deno.Signal.SIGINT); setTimeout(() => { sig.dispose(); }, 5000);
for await (const _ of sig) { console.log("interrupted"); } 以上 for-await 循環(huán)將在 sig.dispose() 被調(diào)用時(shí)退出,運(yùn)行時(shí)間為 5 秒。
更多建議: