/// Handles sigints using our counter on how many sigints have been
/// seen so far. The idea is that on the first sigint we
/// forward it to the observed process in order to give it a chance to
/// clean up. Only after the first attempt is when we try to be a little
/// more drastic.
Handles sigints using our counter on how many sigints have been
seen so far. The idea is that on the first sigint we
forward it to the observed process in order to give it a chance to
clean up. Only after the first attempt is when we try to be a little
more drastic.
Handles sigints using our counter on how many sigints have been seen so far . The idea is that on the first sigint we forward it to the observed process in order to give it a chance to clean up . Only after the first attempt is when we try to be a little more drastic .
fn handle_sigint(&mut self) {
        self.sigint_ctr += 1;
        let (sig, group) = match self.sigint_ctr {
            1 => (Signal::SIGINT, false),
            2 => (Signal::SIGTERM, true),
            _ => (Signal::SIGKILL, true),
        };
        self.signal_running_pots(sig, group);
    }
fn handle_sigint ( & mut self ) { self . sigint_ctr += 1 ; let ( sig , group ) = match self . sigint_ctr { 1 => ( Signal :: SIGINT , false ) , 2 => ( Signal :: SIGTERM , true ) , _ => ( Signal :: SIGKILL , true ) , } ; self . signal_running_pots ( sig , group ) ; }
Handles sigints using our counter on how many sigints have been
seen so far.
Handles sigints using our counter on how many sigints have been seen so far .
&mut self