3

alarm()Linux用のCでのPerlの同等物は何ですか? 私の知る限り、Windowsにはネイティブalarm関数はありませんが、Perlは回避策を作成しましたが、私はあまり興味がありません.

知らない方へalarmPerlアラーム

編集:実際には、ミリ秒精度のアラームが必要です。そして、スレッド(マルチスレッドアプリ)で使用できるもの。

4

1 に答える 1

2

何かのようなもの:

unsigned int alarm (unsigned int secs, unsigned int usecs) {
   struct itimerval old, new;
   new.it_interval.tv_usec = 0;
   new.it_interval.tv_sec = 0;

   // usecs should always be < 1000000
   secs += usecs / 1000000;
   usecs = usecs % 1000000;

   // set the alarm timer
   new.it_value.tv_usec = (long int) usecs;
   new.it_value.tv_sec = (long int) secs;

   // type ITIMER_REAL for wallclock timer
   if (setitimer (ITIMER_REAL, &new, &old) < 0)
     return 0;
   else
     return old.it_value.tv_sec;
 }

参照: http://www.gnu.org/software/libc/manual/html_node/Setting-an-Alarm.html

于 2013-06-24T05:08:43.860 に答える