[so] Sleep milisecunde
Razvan Deaconescu
razvan.deaconescu at cs.pub.ro
Sun Apr 12 21:32:52 EEST 2009
On Sun, 2009-04-12 at 21:19 +0300, Sergiu Iordache wrote:
> On Sun, Apr 12, 2009 at 9:10 PM, Bogdan Sass <bogdan.sass at catc.ro> wrote:
> > Cum as putea genera un delay de X milisecunde in C (conform cu comanda "s
> > MMM" din enuntul temei)? Eventual si intr-un mod portabil si/sau standard :)
> >
> > Intreb pentru ca am gasit o formulare... interesanta [1]:
> >
> > There is no way to do so in standard C, the topic of this newsgroup. The
> > function sleep() is also not part of standard C. The clue is the fact that
> > the operating system is relevant.
> >
> > [1] http://bytes.com/groups/c/215640-millisecond-delay-c-linux
> >
> > In contextul temei, usleep() ar fi o solutie acceptata?
Da, C standard nu ofera suport pentru granularitate de milisecunde.
Trebuie folosita o interfata proprie sistemului de operare.
> Din câte știu eu atât usleep()[1] cât și nanosleep()[2] ar trebui să
> funcționeze ok.
>
> Eu deocamdată am folosit usleep[1] dar am înțeles că e mai bună
> nanosleep[2] și probabil o să o schimb în asta.
Da, se prefera nanosleep.
OpenGroup[0x01] spune "Applications are recommended to use setitimer(),
timer_create(), timer_delete(), timer_getoverrun(), timer_gettime() or
timer_settime() instead of this interface."
Pagina de manual Linux[0x02] spune "4.3BSD, POSIX.1-2001. POSIX.1-2001
declares this function obsolete; use nanosleep(2) instead. POSIX.1-2008
removes the specification of usleep()."
Razvan
[0x01] http://opengroup.org/onlinepubs/007908799/xsh/usleep.html
[0x02] http://www.kernel.org/doc/man-pages/online/pages/man3/usleep.3.html
More information about the so
mailing list