sleep en millisececondes ?!?!?! PLEASE HELP !!! [C/C++ UNIX] - Programmation
Marsh Posté le 20-03-2002 à 13:00:26
Je sens que tu vas m'en vouloir de ce que je vais dire, mais bon je prends le risque: en Pascal (Delphi/Kylix) la fonction sleep prend en paramètre un nombre de millisecondes et non pas un nombre de secondes
Bon ça ne t'aide pas, je sais
Marsh Posté le 20-03-2002 à 13:35:10
man nanosleep
Marsh Posté le 21-03-2002 à 18:38:33
antp a écrit a écrit : Je sens que tu vas m'en vouloir de ce que je vais dire, mais bon je prends le risque: en Pascal (Delphi/Kylix) la fonction sleep prend en paramètre un nombre de millisecondes et non pas un nombre de secondes Bon ça ne t'aide pas, je sais |
Antp je m'attendais à une réponse de ce genre de ta part !
Marsh Posté le 21-03-2002 à 18:38:49
Jar Jar a écrit a écrit : man nanosleep |
ha ouais je vais essayer ça demain au boulot :-)
thx
[jfdsdjhfuetppo]--Message édité par robripper--[/jfdsdjhfuetppo]
Marsh Posté le 21-03-2002 à 18:57:27
Borland C++ 5.01 connait po nanosleep.... Donc G un doute...
Marsh Posté le 21-03-2002 à 19:01:35
robripper a écrit a écrit : Antp je m'attendais à une réponse de ce genre de ta part ! |
Faudrait un jour qu'on se voie d'ailleurs, ça fait longtemps... Tu viens jamais sur ICQ ?
Marsh Posté le 21-03-2002 à 19:04:05
[SDF]Poire a écrit a écrit : Borland C++ 5.01 connait po nanosleep.... Donc G un doute... |
Essaye avec un vrai compilateur.
Code :
|
Aucun doute, c'est standard.
[jfdsdjhfuetppo]--Message édité par Jar Jar--[/jfdsdjhfuetppo]
Marsh Posté le 21-03-2002 à 19:07:11
Standard Unix (enfin, Posix) ou standard C/C++ ?
Marsh Posté le 21-03-2002 à 19:17:40
antp a écrit a écrit : Standard Unix (enfin, Posix) ou standard C/C++ ? |
Tu connais mon avis sur la question : c'est pareil. Du C sans Posix, c'est comme une voiture sans roues.
Marsh Posté le 21-03-2002 à 19:36:07
Ouais c'est vrai aussi
Marsh Posté le 21-03-2002 à 22:24:24
sous linux j'ai déja utilisé Tcl_sleep(temps_en ms) et #include tcl.h ...
[jfdsdjhfuetppo]--Message édité par kvl--[/jfdsdjhfuetppo]
Marsh Posté le 21-03-2002 à 22:31:21
ça existe pas delay() sous unix ?
car ça, c'est en millisecondes
Marsh Posté le 21-03-2002 à 22:44:06
torpe23 a écrit a écrit : ça existe pas delay() sous unix ? car ça, c'est en millisecondes |
Non, par contre il y a usleep (en microsecondes).
Mais le plus portable, c'est nanosleep.
Marsh Posté le 22-03-2002 à 00:27:27
torpe23 a écrit a écrit : pourtant, j'en fais des delay avec qnx !... |
Après vérification, il y a une fonction delay() dans Solaris, mais elle est réservée à l'écriture de drivers en espace noyau. Sur les systèmes GNU, ça n'existe pas, et ce n'est pas dans la norme POSIX.
Marsh Posté le 22-03-2002 à 10:54:02
Jar Jar a écrit a écrit : Après vérification, il y a une fonction delay() dans Solaris, mais elle est réservée à l'écriture de drivers en espace noyau. Sur les systèmes GNU, ça n'existe pas, et ce n'est pas dans la norme POSIX. |
En tout cas encore un grand merci, JAR JAR t'es un killer !
Ca fonctionne très bien ici sur solaris ...
Unix forever !
Marsh Posté le 22-03-2002 à 13:09:40
perso j'utilise select:
int sleep_ms(unsigned int ms)
{
struct timeval tm;
tm.tv_sec = ms/1000L;
tm.tv_usec = 1000L*(ms%1000L);
return select(0,NULL,NULL,NULL,&tm);
}
Marsh Posté le 20-03-2002 à 09:15:57
La question est simple, comment faire un sleep en milliseconde sous unix ? Merci.
---------------
RobRipper