ELVI kérdés:

Épp írok egy programocskát. Két üzemmódja lenne.
Az egyikben kap egy számsort (másodperceket), és a megadott ideig
vár sleep()-pel, aztán feldolgozza a következõ elemet a listán,
majd vált a következõ intervallumra a végtelenségig körbe körbe.

A másik esetben nem idõre vár, hanem signalra.

Roppant kényelmes lenne, azt mondani ilyenkor, hogy sleep(végtelen),
majd a signal megszakítja. Csakhogy nincs "végtelen" alvás.

Most mondhatom, hogy sleep(BAZI_NAGY_SZAM), például 946728000 (30 év),
de lassan nyakunkon a Y2038, amikor gondok lesznek a 32 bites elõjeles
Unix idõvel. Félek nem volna szerencsés, ha már most megadnék egy 2039-re
esõ felébredési idõpontot, amíg a kernel és a libc nem garantálja nekem
a 64 bites timert.

Használjam a pause()-t? Utálnék elágazni még ezért is. Elegánsabb
megoldás esetleg? :-)

(Ja és az egész PERL-ben van, de az a lényegen nem sokat változtat.)

kissg
_________________________________________________
linux lista      -      linux@mlf.linux.rulez.org
http://mlf2.linux.rulez.org/mailman/listinfo/linux

válasz