mirror of
https://github.com/denoland/deno.git
synced 2024-12-29 02:29:06 -05:00
901 B
901 B
Handle OS Signals
This program makes use of an unstable Deno feature. Learn more about unstable features.
You can use Deno.signal()
function for handling OS signals:
for await (const _ of Deno.signal(Deno.Signal.SIGINT)) {
console.log("interrupted!");
}
Deno.signal()
also works as a promise:
await Deno.signal(Deno.Signal.SIGINT);
console.log("interrupted!");
If you want to stop watching the signal, you can use dispose()
method of the
signal object:
const sig = Deno.signal(Deno.Signal.SIGINT);
setTimeout(() => {
sig.dispose();
}, 5000);
for await (const _ of sig) {
console.log("interrupted");
}
The above for-await loop exits after 5 seconds when sig.dispose()
is called.