18 int main(
int argc, 
char* argv[])
 
   36   catch(
const exception &error) {
 
   37     FATAL(error.what() << endl);
 
   43   if (intervalTime_ms <= 0) { 
FATAL(
"interval time [ms]  " << intervalTime_ms << 
" < 0." << endl); }
 
   44   if (totalTime_s     <= 0) { 
FATAL(
"total    time [s]   " << totalTime_s     << 
" < 0." << endl); }
 
   46   JFileDescriptorMask mask;
 
   48   cout << 
"hit <return> to interrupt" << endl;
 
   52   clock.setInterval(intervalTime_ms * 1000);
 
   58   int    numberOfInterrupts = 0;
 
   60   for (
int i = 0; i < 1000 * totalTime_s / intervalTime_ms; ) {
 
   64     mask.set(STDIN_FILENO);      
 
   66     if (clock.wait(mask)) {
 
   81   NOTICE(
"Number of interrupts    " << setw(8) << right << numberOfInterrupts      << endl);
 
   82   NOTICE(
"Total delay        [ms] " << setw(8) << right << clock.getDelay() / 1000 << endl);
 
   83   NOTICE(
"Elapsed time       [ms] " << setw(8) << right << (t1 - t0)        / 1000 << endl);
 
   85   if (numberOfInterrupts != 0) {
 
   86     NOTICE(
"Time per interrupt [us] " << setw(8) << right << (t1 - t0 - clock.getDelay()) / numberOfInterrupts << endl);