Je travaille dans une application Java où je veux m'assurer qu'un processus donné dans l'ordinateur est inactif ex: - si nous commençons un processus de téléchargement dans notre ordinateur, mon application devrait être capable de le surveiller (processus) et de le dire quand c'est fini,Existe-t-il un moyen de trouver un processus donné?
Répondre
La plupart des systèmes d'exploitation fournissent des commandes utilisateur pour surveiller l'activité d'un processus, comme la CPU ou les E/S. Ou, à un niveau supérieur, vous pouvez obtenir le statut (en cours ou non) d'un processus par son identifiant de processus. Vous pouvez utiliser ces outils à partir de Java, mais il n'y a rien dans le core Java pour le faire, et je ne connais pas non plus de bibliothèques à cette fin. Toutefois, si vous envisagez de tuer un processus parce qu'il est "inactif", cela ne serait généralement pas sans danger. Vous devez en savoir assez sur le processus en question pour être sûr qu'il est acceptable de le tuer, et si vous en savez beaucoup à ce sujet, vous trouverez probablement qu'il y a un moyen de le faire se fermer proprement.
Si vous démarrez le processus d'un autre processus, vous pouvez détecter quand il se termine avec Process.waitFor() Vous pouvez même utiliser son code de sortie.
- 1. Comment trouver quel processus fonctionne Linux à un moment donné?
- 2. Comment trouver plus d'informations sur un processus MySQL donné?
- 3. Tuer un processus après un délai donné?
- 4. Existe-t-il un moyen de trouver un port utilisé par processus, étant donné son identifiant de processus, en utilisant java?
- 5. trouver un moyen de tracer
- 6. un processus guestOS occupe VCPU à un moment donné?
- 7. trouver la décimale dans un nombre donné
- 8. Trouver un décalage UTC donné une ville
- 9. Comment utiliser un ID de processus donné par un processus dans un autre processus en utilisant C#
- 10. Excel-VBA Trouver un fichier pdf donné un chemin
- 11. Trouver si un ensemble contenant un objet donné ou non
- 12. Quel est le moyen le plus simple de voir si un processus avec un pid donné existe en Python?
- 13. Existe-t-il un moyen de trouver le pid d'un processus de pair de socket?
- 14. Existe-t-il un moyen d'identifier comment les signaux peuvent être délivrés en attente d'un identifiant de processus donné?
- 15. solr, trouver les termes/termes précédants pour un terme donné
- 16. Comment `supervorctl tail` fonctionne-t-il, pour un processus donné?
- 17. Java Timer Arrêter le processus à un moment donné
- 18. Y a-t-il un moyen de trouver des fichiers dans Linux modifiés à un moment donné
- 19. trouver le nombre total d'enregistrements pour un endroit donné
- 20. moyen de trouver un ensemble d'éléments un à la fois
- 21. Un moyen facile de trouver un devis inégalé dans vim?
- 22. Requête pour trouver un prix moyen pondéré
- 23. Scrapy CrawlSpider post-traitement: Trouver un moyen
- 24. Obtenir le processus en cours donné handle de processus
- 25. Comment vérifier si un processus avec un PID donné est en cours d'exécution?
- 26. Trouver un moyen de rejoindre la dernière gamme de dates?
- 27. comment trouver quel processus a un handle sur un fichier à partir du nom de fichier
- 28. Trouver k voisins les plus proches pour un vecteur donné?
- 29. Trouver tous les chemins qui ont un nœud donné
- 30. Trouver tous les messages avec un PR_SEARCH_KEY donné
Je pense qu'il n'y a pas de moyen direct de le surveiller mais si je pars pour ce genre de solution ??? je peux facilement surveiller l'utilisation de la mémoire de ce processus et si l'utilisation de la mémoire est constante pendant un certain temps, je viens à une conclusion en disant que le processus est inactif ???? –
Cela dépend du programme, mais il semble que le temps CPU total (pas l'utilisation actuelle du processeur) soit une mesure plus fiable que l'utilisation de la mémoire. – erickson