talk session
Paul Falstad
pfalstad at phoenix.princeton.edu
Fri May 10 18:56:52 AEST 1991
natha at hal.com (Nathaniel Ingersol) wrote:
>In article <1489 at cvbnetPrime.COM> mkaminsk at cvbnet.prime.com (mailhost) writes:
>:
>:Actually usleep(3) is going away in System V Release 4 (SVr4)
>:so you can use select(2):
>:
>: #include <stdio.h>
>: #include <sys/types.h>
>: #include <sys/time.h>
>:
>: struct timeval timeout;
>:
>: timeout.tv_sec = 0;
>: timeout.tv_usec = number_of_microseconds;
>:
>: /* call select for it's timeout feature */
>: select(1, NULL, NULL, NULL, &timeout);
>:
>
>Am I missing something here, or why can't you just make a usleep out
>of setitimer? You could even use ITIMER_REAL.
You could just do this, yes.
---
#include <sys/time.h>
#include <signal.h>
#include <stdio.h>
int handler(){;} /* needed to make pause() work */
usleep(unsigned usec) {
struct itimerval ix;
ix.it_value.tv_sec = 0;
ix.it_value.tv_usec = usec;
ix.it_interval.tv_sec = 0;
ix.it_interval.tv_usec = 0;
signal(SIGALRM,handler);
setitimer(ITIMER_REAL,&ix,NULL);
pause();
signal(SIGALRM,SIG_DFL);
}
---
Looks harder to me. :-)
--
Paul Falstad pfalstad at phoenix.princeton.edu
And on the roads, too, vicious gangs of KEEP LEFT signs!
If Princeton knew my opinions, they'd have expelled me long ago.
More information about the Comp.unix.wizards
mailing list