Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 2dffed32

Von Moritz Bunkus vor mehr als 12 Jahren hinzugefügt

  • ID 2dffed32b8ca244087eab7d03638ed5766f96042
  • Vorgänger 36da7705
  • Nachfolger bfe2163f

Task-Server mit SIGALRM sofort aufwecken können

Unterschiede anzeigen:

scripts/task_server.pl
123 123
    }
124 124

  
125 125
    my $seconds = 60 - (localtime)[0];
126
    sleep($seconds < 30 ? $seconds + 60 : $seconds);
126
    if (!eval {
127
      local $SIG{'ALRM'} = sub {
128
        $::lxdebug->message(0, "Got woken up by SIGALRM") if $lx_office_conf{task_server}->{debug};
129
        die "Alarm!\n"
130
      };
131
      sleep($seconds < 30 ? $seconds + 60 : $seconds);
132
      1;
133
    }) {
134
      die $@ unless $@ eq "Alarm!\n";
135
    }
127 136
  }
128 137
}
129 138

  

Auch abrufbar als: Unified diff