阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

      教程列表

      抓包专区
      测试专区

      Deno 处理操作系统信号

      处理系统信号

      这个程序使用了不稳定的 Deno 特性。更多信息请查阅 稳定性

      API 参考手册

      您可以使用 Deno.signal() 函数来处理系统信号。

      for await (const _ of Deno.signal(Deno.Signal.SIGINT)) {
        console.log("interrupted!");
      }
      
      

      Deno.signal() 也是一个 promise。

      await Deno.signal(Deno.Singal.SIGINT);
      console.log("interrupted!");
      
      

      如果您想要停止监控信号,可以使用信号对象的 dispose() 方法。

      const sig = Deno.signal(Deno.Signal.SIGINT);
      setTimeout(() => {
        sig.dispose();
      }, 5000);
      
      for await (const _ of sig) {
        console.log("interrupted");
      }
      
      

      以上 for-await 循环将在 sig.dispose() 被调用时退出,运行时间为 5 秒。

      目录
      本文目录
      目录