2 votes

Java, Eclipse : Comment mettre en pause un programme en cours d'exécution ?

Je suis en train de faire des calculs sur ma boîte Linux et je ne peux pas vraiment me permettre de les faire tourner sur la batterie pendant que je rentre chez moi. Il faut une connexion réseau et pour l'instant, je fais tourner ce truc sur une connexion sans fil. Une fois arrivé à la maison, je dois brancher un câble Ethernet pour accéder à l'Internet.

Je n'ai jamais fait cela auparavant mais je veux "reprendre" le calcul une fois arrivé à la maison. Pour cela, je pense que je devrais suspendre le programme eclipse (que je n'ai apparemment pas démarré à partir d'un terminal, donc comment le suspendre ?), mettre le système en veille. Puis sortir le système de la veille, connecter le câble ethernet, obtenir une nouvelle adresse IP, puis reprendre eclipse. Je suppose que cela fonctionnera.

Quelqu'un a-t-il une meilleure approche ?

3voto

rob Points 1243

Puisque vous avez indiqué que vous utilisez Linux, vous pouvez utiliser la commande kill avec les arguments -STOP et -CONT, ce qui pourrait être une option plus appropriée pour mettre le processus en pause et le reprendre.

Tout d'abord, ouvrez un terminal et obtenez le PID en utilisant

ps aux

Exécutez ensuite

kill -STOP pid

où pid est le PID de votre processus Java.

Pour reprendre, exécutez

kill -CONT pid

Bref tutoriel ici : http://tombuntu.com/index.php/2007/11/23/how-to-pause-a-linux-process

Une autre méthode consiste à exécuter votre programme en mode débogage dans Eclipse et à le mettre en pause dans la vue Débogage. Cependant, l'exécution en mode de débogage entraîne une baisse des performances.

Notez que la connexion réseau de votre programme devra probablement être rouverte (soit en raison d'un changement de réseau, soit en raison de la fermeture de votre connexion à cause d'un dépassement de délai de l'autre côté), de sorte que vous devrez coder une certaine logique pour détecter une connexion réseau interrompue et la reconnecter.

0voto

djangofan Points 4152

Vous pouvez probablement le faire en exécutant Jconsole.exe qui est inclus dans le répertoire bin de Jre. A l'intérieur, il y a un moyen d'envoyer une pause "Operation" probablement...

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X