Emmanuel Delahaye a écrit :
C'est clair qu'une boucle infinie 'blanche', c'est à dire sans suspension, c'est pas ce qu'on fait de mieux dans le genre programmation coopérative... Heureusement que les interruptions, et notamment celles du time-slicing (Linux, Windows 9x/NT) continuent à faire avancer le monde, sinon, ce serait le blocage définitif (comme sous MS-DOS), ou Windows 3.x. C'était le bon temps...
Un programme 'civilisé' ne doit pas faire de boucles de plus de quelques millisecondes (au pif). Il faut donc le suspendre de temps en temps pour que les autres processus puissent récupérer le CPU aussi...
|
Pardon j'ai du mal m'exprimer, je parlais d'une boucle infinie qu'on peut trouver dans un jeu ou un daemon par exemple. Du genre:
while (app.alive)
run(app); |
Mon truc est resolu, le select n'etait pas temporise intelligemment, mais je suis curieux de savoir comment proceder dans le cas d'un jeu ou d'une appli graphique basee sur des animations.
Citation :
La programmation multitâche, c'est pas du bricolage... C'est un métier...
|
J'avoue que jusqu'a pas longtemps je codais sur un systeme prehistorique, donc le partage des ressources c'est un peu nouveau pour moi. Par contre le bricolage j'evite
Citation :
Quand aux fuites mémoires éventuelles, elles n'ont rien à voir avec l'occupation du CPU... Ca concerne plutôt les ressources...
|
Oui oui je m'en suis rendu compte apres avoir poste
de toutes facons les reponses d'apres m'ont ete utiles.
---------------
gnature gnature gnature gnature gnature gnature