begin process at 2012 02 12 10:27:36
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Linux

 > 

Autre

 > 

timer asynchrone


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

timer asynchrone

dimanche 21 mai 2006 à 01:27:32 | timer asynchrone

ToToL

Membre Club
Bonjour

J'ai besoin dans un programme en cour de création d'un timer asynchrone. je m'explique :

j'ai besoin d'executer des actions a des heures bien précise sauf que je ne veut pas qu'en attendant ces moments, je bloque mon programme.

Donc , comme sous win32 avec les events dans les fenetres de dialogues, j'aimerai savoir si cela existe avec des timers et sous linux car je programme sous linux.

J'ai fouillé un peut partout sur le net sans trouver vraimetn ce que je veux , peut etre parce que ca n'existe pas.

Merci
    ToToL
dimanche 21 mai 2006 à 09:46:39 | Re : timer asynchrone

24Karas

Peut-être qu'utiliser des thread peuvent aider.
Avec ça tu pourrais lancer un thread pour chaque action que tu veux executer en passant comme param au thread l'heure d'execution de la commande.

- tu lances ton thread
- puis dans ton thread tu fais patienter jusqu'à ce qu'à ce que ça soit l'heure qu'il te faut. (avec une fonction genre sleep, pas une boucle infinie sinon tu vas bouffer le CPU)
- puis un fois que c'est fait tu fais continuer l'execution de ton thread (l'action en gros)

ici un exemple sous linux avec des thread
http://www.cppfrance.com/codes/THREADS-SOUS-LINUX_19379.aspx

++


dimanche 21 mai 2006 à 09:52:25 | Re : timer asynchrone

ToToL

Membre Club
j'avais penser a cela mais je me demandait si la fonction sleep était assez précise.
mais surtout c'est que ce n'est pas tres pratique , mais bon je vais faire avec.

Merci
dimanche 21 mai 2006 à 12:26:29 | Re : timer asynchrone

24Karas

Réponse acceptée !
si ton truc doit etre plus précis, tu peux faire :

- calcule le temps en milliseconde à attendre
- avec ton nombre de milliseconde, tu trouves le nombre de secondes entieres à attendre
- tu fais ton sleep du nombre de seconde
- il te reste à patienter pour le nombre de millisecondes restantes.là tu peux faire avec une boucle, tant pis pour le CPU, ça va pas durer des heures (au maximum juste un peu moins d'une seconde)

++

dimanche 21 mai 2006 à 13:13:28 | Re : timer asynchrone

mondrone

Membre Club
n'est-il pas possible d'essayer avec un signal ? Je ne me rapelle plus le nom, sur le coup, mais yen a pas un qui permet d'entrer dans une fonction au bout d'un temps bien précis ?


  Qui ne tente rien...
  Ne risque pas d'avoir grand chose !!!

dimanche 21 mai 2006 à 13:16:52 | Re : timer asynchrone

mondrone

Membre Club
si ca y est j'ai le nom : le sigalrm.

si j'ai bien compris le fonctionnement un truc du genre :

signal(SIGALRM, alarme);
alarm(5);

avec void alarme(int sig);

va te déclencher la fonction alarme au bout de 5 secondes !

Mais je ne sais pas l'avantage / sleep (ou l'inconvenient d'ailleurs)


  Qui ne tente rien...
  Ne risque pas d'avoir grand chose !!!



Cette discussion est classée dans : timer, programme, linux, existe, asynchrone


Répondre à ce message

Sujets en rapport avec ce message

portage Linux vers visual C++ [ par acsx ] Salut,J'ai un programme écrit en C sous Linux et je souhaite le faire tourner sous Visual C++ 6.0 sous Windows.J'ai donc créé un projet win32 et intég timer avec linux[?] [ par dmothes ] Help!!!quelqu'un pourrait-il m'aider? j'ai besoin d'utiliser un timer sous linux (si possible, en millisecondes)...faut-il utiliser linux/timer.h? com compilation c++ sous linux [ par marco2009 ] voila je commence a programmer en cpp et lorsque j'essaye de compile avec la console en utilisant gcc ca marche pour les programme ecrit en c mais po programme graphique sous linux avec X11 de préférence (pour le portage) [ par coucou747 ] je recherche une façon de créer des programmes graphiques en c, j'ai cherché des heures sur le net des programmes en c utilisant des librairies comme [debutant] Interruption timer sous linux [ par PierrotLeCelte ] Bonjour,Je voudrais ecrire un petit programme ou une fonctionqui s'execute a chaque interruption de l'irq timer(irq = 0). D'abord est ce possible ? Et dev C++ sous linux (debian) [ par izle ] Bonjour,Je developpe une API windows, j'aimerais faire la meme chose mais pour linux (debian), existe-t-il une version de dev C++ sous linux, si oui o Executer un prog linux(commandes) a partir d'un prog windows(C++) [ par angeljp ] Salut,Je voudrais savoir s'il est possible d'executer à partir d'un PC sous Win2k un programme se trouvant sur une station Linux ?Autre chose : je vou Comment changer de répertoire avec un programme c++ sur linux [ par mathsunn01 ] Bonjour! J'aimerai creer un programme qui me permettrai de changer de répertoire dans un terminal linux (comme la commande cd).J'ai fé une recherche s Ca existe ? [ par simtiers ] Salut ! Je voulais jsute savoir si des terminaux, aux sens de jeux comme Uplink (console) ou Street Hacker existe réellement, car ça me servirait fra


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,872 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales