async-ctrlc 1.2.0

Async wrapper of `ctrlc`
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// Copyright 2020 kennytm. Licensed under MIT OR Apache-2.0.

use async_ctrlc::CtrlC;
use async_std::prelude::StreamExt as _;

#[async_std::main]
async fn main() {
    let ctrlc = CtrlC::new().expect("cannot create Ctrl+C handler?");
    println!("Try to press Ctrl+C 3 times");
    let mut stream = ctrlc.enumerate().take(3);
    while let Some((count, _)) = stream.next().await {
        println!("{} x Ctrl+C!", count + 1);
    }
    println!("Quitting");
}