Comment puis-je faire Thread.Sleep (10.4166667) ;? OK, je vois maintenant que le sommeil n'est pas le chemin à parcourir. Donc, j'utilise Timer mais la minuterie est également en ms mis j'ai besoin de plus précis Y at-il une minuterie avec une précision de la nanoseconde?Plus précis Thread.Sleep
Répondre
Veuillez noter que l'argument est en millisecondes, donc 10 est 10 millisecondes. Êtes-vous sûr de vouloir 10.41 etc millisecondes? Si vous voulez 10,41 secondes, alors vous pouvez utiliser 10416.
Donc vous voulez que votre fil de sommeil pour cette heure et ensuite reprendre? Oublie ça. Ce paramètre indique au système de réactiver le thread après au moins ce nombre de millisecondes. Au moins. Et après la reprise, le fil pourrait être de nouveau mis en sommeil en un clin d'œil. C'est comme ça que fonctionnent les systèmes d'exploitation et vous ne pouvez pas le contrôler.
Veuillez noter que Thread.Sleep
dort aussi longtemps que vous le dites (même pas précisément), quel que soit le temps d'exécution du code avant ou après.
Votre question semble impliquer que vous voulez que du code soit exécuté à certains intervalles, car un temps précis semble avoir de l'importance. Ainsi, vous pourriez préférer un Timer
.
L'entrée à Thread.Sleep
est le nombre de millisecondes pour lesquelles le thread est bloqué. Après cela, il sera exécutable, mais vous n'avez aucune influence sur le moment où il est réellement planifié. C'est à dire. en théorie, le thread pourrait attendre indéfiniment avant de reprendre l'exécution.
Il est rarement logique de compter sur un nombre spécifique de millisecondes ici. Si vous essayez de synchroniser le travail entre deux threads, il y a better options plutôt que Sleep.
Pour un sommeil aussi précis, vous devez utiliser un système d'exploitation en temps réel et vous aurez probablement besoin de matériel spécialisé. L'intégrité RTOS prétend répondre aux interruptions en nanosecondes, comme d'autres.
Cela ne se produira pas avec C# ou tout type d'appel de haut niveau de sommeil.
- 1. AS3 Grammaire: Le plus précis
- 2. Obtenir un résultat CGRectContainsPoint plus précis
- 3. Problème avec Thread.Sleep
- 4. ManualResetEvent contre Thread.Sleep
- 5. Test avec Thread.sleep
- 6. InterruptedException from Thread.sleep()
- 7. Android: Comment obtenir l'emplacement le plus précis du GPS
- 8. Comment trouver les résultats GPS les plus précis de l'iPhone
- 9. Comment puis-je obtenir des résultats plus précis de gcov?
- 10. Quel est le détecteur de codage le plus précis?
- 11. modifier le script d'événement click pour être plus précis
- 12. WebKit TouchEvents - Pas précis?
- 13. Windows Service doit attendre, Thread.Sleep?
- 14. Pool d'objets partagés sans Thread.Sleep?
- 15. iPhone Précis géolocalisation inversée
- 16. Utilisation de Thread.Sleep() dans un service Windows
- 17. Quelle est l'efficacité de Thread.sleep (long)?
- 18. positionnement précis dans Android
- 19. Thread.currentThread(). Sleep (temps) v/s Thread.sleep (heure);
- 20. MJPEG Internet streaming - précis fps
- 21. à partir d'un moment précis?
- 22. Géolocalisation Firefox précis que l'iPhone Safari?
- 23. Quelle est la différence entre Thread.Sleep (timeout) et ManualResetEvent.Wait (timeout)?
- 24. Algorithme d'ajustement des moindres carrés précis nécessaire
- 25. Travail SQL Server avec un timing précis
- 26. C++: système de fichiers boost pour retourner une liste de fichiers de plus un moment précis
- 27. Calcul d'ordonnée d'intersection de lignes le plus précis avec des flottants?
- 28. Quel est le moyen le plus précis de distinguer l'une des 8 couleurs?
- 29. Quel est le moyen le plus précis pour obtenir des actions chronométrées sur iPhone?
- 30. Faire des combos avec le clavier et détecter le plus précis
Le paramètre de veille est en millisecondes. Pourquoi avez-vous besoin d'une précision supérieure à 1 ms? –
Vous ne pouvez pas compter sur le système pour dormir exactement pendant le temps que vous spécifiez. Il ne peut être aussi précis que le système sous-jacent (qui pourrait être Windows, Mac et Linux actuellement). L'essentiel de cela est, que votre application devrait être capable de travailler même si elle dort pendant une heure au lieu d'une seconde, etc. (ne se produira pas dans la pratique - mais néanmoins) –
Et la résolution est 15ms (tops) –