/*----------------------------------------------------------------*/ /* sleep02.c sleep test Keven Miller 04/25/2011 */ /*----------------------------------------------------------------*/ #pragma list off /*MPE*/ #include #include #include #include #pragma intrinsic XCONTRAP /*MPEcy*/ #pragma intrinsic RESETCONTROL /*MPEcy*/ #define proc /*----------------------------------------------------------------*/ proc void cytrap (void) /*MPEcy*/ { /*MPEcy*/ raise (SIGINT); /*MPEcy*/ RESETCONTROL (); /*MPEcy*/ } /*MPEcy*/ /*----------------------------------------------------------------*/ proc void sleepcy (int sig) { printf ("!! Control-Y SIGINT %d !!\n", sig); /*MPEcy*/ signal ( sig, &sleepcy ); } proc int main ( int ac, char *av[] ) { int uns, secs, old; time_t t1, t2; XCONTRAP ( (int) &cytrap, &old ); /*MPEcy*/ signal ( SIGINT, &sleepcy ); secs = 10; printf ("Sleep 10\n"); t1 = time (0); uns = sleep (secs); t2 = time (0); printf ("Sleep unslept secs %d (Actual secs %d)\n", uns, t2 - t1); } /*----------------------------------------------------------------*/