Vous pouvez utiliser rdtsc instruction ou QueryPerformanceCounter fonction Windows API pour obtenir de haute résolution de compteurs. Vous pouvez calibrer ensuite avec GetTickCount, ou des fonctions du temps par exemple.
Bien sûr, cela ne signifie pas que le fil va se réveiller après exactement ce laps de temps, mais il devrait être aussi proche que la plateforme (et de la mise en œuvre de bibliothèque) permet de. Comme d'autres commentaires l'ont souligné, Windows n'a pas fait de permettre les discussions de sommeil pour la durée de ce court.
Windows ne peut pas dormir pour moins d'une milliseconde. Tranches de temps ont tendance à être beaucoup plus élevé que 1ms, de sorte qu'il n'est pas vraiment possible, même avec un fil d'une plus haute priorité.
Si vous n'avez pas de soins sur la gravure du PROCESSEUR, vous pouvez tourner jusqu'à ce que QueryPerformanceCounter s'est écoulé du temps.
Je viens d'écrire un commentaire détaillé sur le sommeil() la fonction et la filature de la
compteur de performance. Pour éviter de taper, là encore, voici le lien:
Vous pouvez utiliser
rdtsc
instruction ouQueryPerformanceCounter
fonction Windows API pour obtenir de haute résolution de compteurs. Vous pouvez calibrer ensuite avecGetTickCount
, ou des fonctions du temps par exemple.OriginalL'auteur Lol4t0
La VS 11 dev preview comprend la partie de la bibliothèque standard de traiter avec les threads. Alors maintenant, vous pouvez dire:
Bien sûr, cela ne signifie pas que le fil va se réveiller après exactement ce laps de temps, mais il devrait être aussi proche que la plateforme (et de la mise en œuvre de bibliothèque) permet de. Comme d'autres commentaires l'ont souligné, Windows n'a pas fait de permettre les discussions de sommeil pour la durée de ce court.
OriginalL'auteur bames53
Windows ne peut pas dormir pour moins d'une milliseconde. Tranches de temps ont tendance à être beaucoup plus élevé que 1ms, de sorte qu'il n'est pas vraiment possible, même avec un fil d'une plus haute priorité.
Si vous n'avez pas de soins sur la gravure du PROCESSEUR, vous pouvez tourner jusqu'à ce que QueryPerformanceCounter s'est écoulé du temps.
OriginalL'auteur Cory Nelson
Je viens d'écrire un commentaire détaillé sur le sommeil() la fonction et la filature de la
compteur de performance. Pour éviter de taper, là encore, voici le lien:
c++, usleep() est obsolète, des solutions de contournement pour Windows/MingW?
OriginalL'auteur Arno