Hello,
Je cherche à faire des timeouts dans des fonctions C.
Je sais qu'il existe une methode int timeout(func, arg, delais); mais impossible de trouver son api.
Quelqu'un peut il me donner le noms du header et de la lib?
Merci
Hello,
Je cherche à faire des timeouts dans des fonctions C.
Je sais qu'il existe une methode int timeout(func, arg, delais); mais impossible de trouver son api.
Quelqu'un peut il me donner le noms du header et de la lib?
Merci
$>man timeout
(sinon dvp possede une page de man traduite en FR ici)
C'est la premiere chose que j'ai essayé mais:
"La page de manuel pour "timeout" n'a été trouvée dans aucune des sections."
effectivement elle pas sur le man en ligne de dvp :$
Je l ai sur HP-UX, mais sans conforité spécifié (POSIX, ou autre...)
Par contre le prototype est peut etre dans <curses.h>
La notion de timeout est assez vague. Elle demande à être précisée. Que veux-tu faire exactement et dans quelles conditions précises ?Envoyé par Mizar75
Je dois lire sur une socket. S'il y a un message je retourne le message sinon j'attend une hypotétique arrive pendant une durée configurable.
En fait je pense que la fonction timeout n'est pas un standard du C. Je regarde pour la methode "alarm"
Rebonjour,
y a sleep( int seconde ), alarm et pause + signal aussi, la percision est pas terrible a la seconde, mais bon.
Sinon rendre la socket bloquante.
select() permet de gérer les timeout.Envoyé par Mizar75
En fait je vais faire:
- Un thread qui lis en permance dans la socket et met le message dans un buffer
- La methode de récupération avec un timeout de N sec qui interroge le buffer toute les secondes jusqu'a récupération d'une donnée ou epuissement des N sec
Pas tres joli mais suffisant pour mon bouchon de test.
Exactement le rôle de la fonction select comme l'a dit Emmanuel![]()
la function poll() gère aussi très bien les timeout.
Oui, mais à ma connaissance, c'est une spécialité Linux... select() est plus universelle...Envoyé par |PaRa-BoL
Partager