Tmicrotimer - timer à la microseconde !

Description

Bonsoir !
Voici maintenant mon dernier né, le TMicroTimer - c'est-à-dire un Timer qui peut gérer une précision de l'ordre de la microseconde (1/1000000 de seconde !). Bien sûr, ce code est ici seulement pour un but pédagogique - nous n'arriverons jamais à une telle précision avec les machines d'aujourdhui (le hardware ne suit pas le software, malheureusement ...), et de toute façon d'autres s'en chargeront volontiers.
Donc voilà, en gros c'est une démonstration de composant associé à un thread : leçon de thread, de propriétés, de composant, et un rapide briefing basique des pointeurs (2 ou 3 lignes de code traitant de çela !).

Bref, j'espère que vous apprécierez.

Je tiens quand même à préciser qu'il ne faut pas changer la priorité du thread ! Si vous la mettez au plus haut, votre système plantera (enfin le mien a répondu comme ça ...).
Ce timer peut être utilisé pour des intervalles genre 1 seconde moins 100 microsecondes, mais sera presque inutile pour des intervalles de 1 à 100 microsecondes - il faut savoir qu'on est pas très loin du temps d'un cycle machine avec 1 microseconde - le temps d'executer tout le code du thread, de voir les conditions, de passer à l'itération suivante de la boucle principale, on a déjà sauté au moins 5 microsecondes :'(
Mais bon, il faut faire avec !
Et voilà !
J'ai inclus un petit exemple sous la forme d'un tutorial, que les débutants (et les autres aussi !) pourront lire pour savoir comment utiliser mon composant, et ce qu'il offre.
Si vous avez des problèmes "d'écran noir", allez dans le fichier projet du tutorial et supprimez la ligne {$R WindowsXP.RES}.

Voilà, ça sera tout !
Attention à la priorité je ne rigole pas avec ça, un système qui se plante ça fait mal ... le mien a réussi à se débloquer après une dizaine de minutes (quand le CPU a trouvé le temps de mettre un peu de cycles sur Delphi, réinitialiser le programme ^^).

Bonne programmation à tous au fait !

Source / Exemple :


// In the Zip !

Conclusion :


Bon, tous remarques, commentaires, critiques, conseils, etc ... ici ;)

Cordialement, Bacterius !

PS : Codé sous Delphi 6 Personal Edition !

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.