wrapper.jvm_cleanup.timeout |
||||||||||
AVERTISSEMENTNE MODIFIEZ AUCUN de ces paramètres à moins d'avoir lu la description de cette propriété. Des paramètres incorrects peuvent empêcher le Wrapper de fonctionner comme prévu. Nombre maximum de secondes accordé au Wrapper pour effectuer le nettoyage après l'arrêt complet de la JVM et avant de commencer le processus visant soit à démarrer une nouvelle JVM, soit à arrêter le Wrapper. Définir la valeur de cette propriété à « 0 » (zéro) signifie qu'il n'y a jamais de délai d'attente. La valeur par défaut est « 10 secondes ».
Le processus de nettoyage consiste à arrêter tous les processus enfants gérés
qui ont été lancés à l'aide des méthodes
WrapperManager. Le Wrapper tentera d'arrêter tous les processus enfants encore en cours d'exécution après que la JVM s'est arrêtée proprement. Sur les plateformes UNIX, cela se fait en envoyant un SIGTERM à chaque processus, puis en attendant qu'ils se terminent. Sur les plateformes Windows, un message WM_CLOSE sera envoyé à chaque fenêtre appartenant au processus enfant. De nombreuses applications Windows peuvent afficher des boîtes de dialogue d'enregistrement lorsqu'elles sont invitées à s'arrêter et peuvent donc ne pas se terminer complètement d'elles-mêmes. Il n'est actuellement pas possible d'envoyer un CTRL-C aux processus console Windows pour leur demander de s'arrêter proprement, ils sont donc actuellement terminés immédiatement. Si tous les processus enfants sont considérés comme arrêtés, le Wrapper poursuivra avant l'expiration du délai d'attente. Une fois le délai d'attente expiré, le Wrapper fermera de force tous les processus enfants encore en cours d'exécution. Sur les plateformes UNIX, cela se fait en envoyant un SIGKILL à chaque processus. Sous Windows, le processus est terminé de force.
Les informations relatives aux processus enfants ne seront journalisées
que lorsque la sortie DEBUG est activée,
ou lorsque la propriété wrapper. Exemple de cas : L'exemple suivant montre l'arrêt propre de 3 processus enfants. 2 s'arrêtent immédiatement, et le 3e prend quelques secondes.
L'exemple suivant montre l'arrêt propre de 2 processus enfants, et d'un 3e qui expire et est tué.
AVERTISSEMENTBien que cette possibilité existe, sachez que définir la valeur de cette propriété à « 0 » (zéro) (= désactiver le Timeout) ou à une valeur trop élevée signifie que le Wrapper peut rester bloqué lors de l'arrêt ou ne jamais pouvoir redémarrer la JVM. Il peut alors être nécessaire de tuer manuellement les processus enfants pour permettre au Wrapper de reprendre. |
Référence : Délai d'attente |
|









