Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Date et heure [ Divers / Général ] (raph004)

mardi 29 avril 2008 à 16:02:56 | Date et heure

raph004

Bonjour,

Je souhaite réaliser un programme qui grâce à un un premier réglage de l'heure et de la date est capable de rester à l'heure de façon autonome, c'est a dire que je ne désire pas utiliser l'heure et la date système mais l'incrémenter de façon régulière dans le programme.
Si possible j'aimerai que cela ne soit pas bloquant ou fait avec une boucle for en calculant avec la vitesse du processeur , parce qu'après j'aimerais le faire tourner dans un Thread...

D'avance merci pour vos idée ou vos exemple de code.

mardi 29 avril 2008 à 17:28:45 | Re : Date et heure

jfrancois

Bonjour,

Quelque soit la méthode, ça m'étonnerait que ça reste précis sans synchronisation régulière avec l'horloge !

Jean-François


mercredi 30 avril 2008 à 08:31:45 | Re : Date et heure

raph004

Bonjour,

A la limte, si c'est pas extrèmement précis c'est pas ce qu'il y a de plus grave. Parce qu'a priori je pourrais me resynchroniser assez régulièrement.
Cependant j'aimerais au moins que si ça reste quelques heure en autonome ça ne se dérègle que de quelques secondes au maximum.

merci

mercredi 30 avril 2008 à 11:02:11 | Re : Date et heure

jfrancois

Bonjour,

Je viens de faire tourner ce petit code 1000 secondes (tout en continuant de travailler sur le même PC), sans décalage apparent, mais voir ce que cela donnera sur plusieurs heures !

#include <stdio.h>
#include <time.h>
#include <windows.h>

int main(void)
{
   // --- Horloge au début
   time_t tH0 = time(NULL);
   printf("H0 = %ld\n",tH0);

   // --- Boucle simulant l'horloge
   int iCpt = 0;
   for (int i=0 ; i<1000 ; ++i)
   {
      Sleep(1000); // 1000 ms
      ++iCpt;
   }

   // --- Horloge à la fin / compteur
   time_t tH1 = time(NULL);
   printf("H1 = %ld = h0 + %d secondes\n",tH1,(int)(tH1 - tH0));
   printf("Compteur = %d\n",iCpt);
   return 0;
}

Ce qui donne :

H0 = 1209544153
H1 = 1209545153 = h0 + 1000 secondes
Compteur = 1000

Mais j'imagine bien que la fonction Sleep() doit utiliser l'horloge du PC ! Si c'est le cas on continue d'en dépendre indirectement.

Jean-François


mercredi 30 avril 2008 à 13:31:21 | Re : Date et heure

raph004

Salut,

En fait j'avais pensé à un programme de ce type mais je connais mal le fonctionnement de la fonction sleep et j'ai peur qu'en fait, puisque que j'ai un programme avec des thread, le timing soit completement faussé.
Donc je vais tout de même esseyer de l'implémenter (malheureusement c'est pas pour tout de suite car je compte embarquer le code sur un carte de devellopement), puis on verra ce que cela donne.

Si vous avez d'autre idée je suis toujours prenneur
Et merci tout de même pour vos réponses

mercredi 30 avril 2008 à 13:58:55 | Re : Date et heure

SAKingdom

Membre Club
Sleep n'assure seulement que le thread restera endormie pour X ms. Rien ne garanti que l'exécution sera repris exactement après c'est X ms. Si le CPU traite un autre thread ou un thread à priorité élevé, ton thread attendra son tour comme les autres.

Aucune précision à attendre si il n'y a pas une synchronisation quelque part.

C++ (@++)




Cette discussion est classé dans : programme, date, heure, façon


Répondre à ce message

Sujets en rapport avec ce message

Le time [ par warmup1992 ] Salut à tous, Je cherche a réalisé un programme un peut inutile .... La source ne sera pas immense ...J'ai juste envie de le faire ...je m'explique : pb d'affichage de DATE HEURE (Dev-CPP) [ par phenX ] Pour pouvoir afficher la date dans un fichier texte, je fait: fprintf(fichier,"%d\t\t", time(&H) et j'obtiens, dans le fichier: 1129296004 qui doit b bloquer date heure [ par raphael59540 ] bonjour,une petite question : Comment puis je bloquer le changement d'heure et de date (sous windows)? ou peut on savoire si l'heure ou la date a ete Creer un programme démon qui lance un autre programme a une heure fixe [ par Noizet ] Hello,J'aimerai réaliser un programme démon qui me permet de lancer un de mes programmes (en php) tous les soirs à 20h. On m'a dit que pour faire un p Frames [ par Chaminouonw ] Bonjour cher(e)s développeurs (développeuses), je suis débutant en C++, et j'aimerais savoir si il est possible de partager l'écran en plusieure parti Problème d'incrémentation de date [ par Orion90 ] Bonjour voila j'ai un petit problème je doit réaliser une Horloge qui affiche la date en même temps sauf que toute les donnée a svoir l'heure (heure, date et heure en c++ [ par ddd666 ] bonjour, voila j'ai un programme c++ qui me donne l'heure et la date actuelle mais je ne comprend pas comment elle é codé!!!!! je ne comprend meme pas Date [ par talapwetpwet ] Bonjour, et merci à ceux qui peuvent m'aider.J'ai une appli qui crée un fichier dans un dossier, jusque là ça va.Mais j'ai besoin de déclencher un évè Erreur de segmentation (core dumped) [ par yansei ] Je suis en train d'essayer de créer un programme qui a pour but de changer la date du système et de créer (à chaque changement de date) deux fichiers Récupération de la date et heure de cration d'un fichier [ par MELISA ] Bonjour à tousJ'essaie de récupérer la date et heure de création d'un fichier.Existe-t-il déjà une API à intégrer?Merci beaucoup pour votre aide.MELIS


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, 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
Temps d'éxécution de la page : 0,250 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.