Java n'est pas mon principal langage de programmation, donc mon expertise est généralement limitée dans ce domaine.Java Console Application Locked
Scénario
Cette application est censé exécuter pour indéfiniment comme un service ou démon. Son but principal est de traiter certaines lignes dans la base de données lorsqu'elles sont insérées par un autre processus.
L'application parfois Spitz des messages de journal à travers System.out.println. Il utilise également d'autres fichiers journaux. J'étais auparavant en utilisant log4j mais c'est désactivé pour le moment.
Aussi je cours cela dans l'environnement de Windows Server, si cela aide. Je ne peux pas utiliser Linux pour le moment.
Problème
Le problème est que, dans de rares occasions, je trouve l'application dans la mise en scène env/prod se verrouille ou ne semble pas traiter toutes les lignes DB plus loin. Après avoir appuyé plusieurs fois sur l'écran, il avance et commence le traitement comme d'habitude. C'est étrange parce que je ne m'attends à aucune entrée de l'utilisateur. Toute entrée de l'application provient soit de la ligne de commande, soit de la base de données.
Aussi je sais avec certitude que ce n'est pas un problème de DB. L'application n'attend pas de verrou de table. Il peut s'agir d'un verrouillage de fichier ou d'un flux System.out en cours de verrouillage. Plus tard, je n'ai pas pensé à la possibilité jusqu'à ce que je vois que certaines frappes sur l'écran «réveille» l'application. Donc, je me demande si quelqu'un peut me diriger dans une direction où je peux déboguer plus loin.
Merci, je pense que c'était la cause. Je ne remarque jamais que je suis parfois en mode de sélection. – Scalable