cs_RoZyk
Messages postés17Date d'inscriptionmardi 10 novembre 2009StatutMembreDernière intervention11 décembre 2009
-
19 nov. 2009 à 12:06
cs_gaet31
Messages postés1Date d'inscriptionsamedi 19 juillet 2008StatutMembreDernière intervention10 mai 2012
-
10 mai 2012 à 19:32
Quelqu'un pourrait il m'indiquer une fonction de lecture au clavier non bloquante?
Dans mon projet Tron: Je veux maintenir la direction de ma moto tant que l'utilisateur ne donne pas de nouvelle direction à l'aide du clavier. La fonction getchar est bloquante, ce que je ne veux pas. Je recherche une fonction de même type mais non-bloquante.
TychoBrahe
Messages postés1309Date d'inscriptionsamedi 31 janvier 2009StatutMembreDernière intervention 5 juin 201312 22 nov. 2009 à 12:50
Salut,
"La fonction getchar est bloquante"
Pas en elle même non. Ici ce qui détermine si l'action est bloquante ou non, comme toute lecteur ou écriture dans un fichier, est la "configuration" du descripteur de fichier. Afin de modifier ceci et donc forcer un fd a être bloquant ou non bloquant tu peux te reporter à l'appel système fcntl (man 2 fcntl).
Après dans ton cas il est bien plus propre de faire comme t'as dit fregolo52, en effet rendre la lecture sur STDIN_FILENO non bloquante a le gros désavantage de manger énormément de ressources vu que tu doit faire de très nombreuses lectures. Il doit également être possible de se débrouiller avec poll ou select mais pour ma part je connais mal ce sujet.