Javaは私の主要なプログラミング言語ではありませんので、私の専門知識は一般にこの領域に限られています。Javaコンソールアプリケーションがロックされています
シナリオ
このアプリは、無期限にサービスまたはデーモンなどのために実行することになっています。その主な目的は、DB内のいくつかの行を、他のプロセスによって挿入されるように処理することです。
アプリは、System.out.printlnを通じてログメッセージを吐き出します。また、他のいくつかのログファイルも使用します。以前はlog4jを使っていましたが、それは今のところ無効になっています。
また、Windows Server環境でこれを実行しています。私は今、Linuxを使用することはできません。
問題
問題は、まれに、私はロックされステージング/ PRODのENVでアプリケーションを検索したり、さらに任意のDBの行を処理していないようだということです。画面上にenterを数回押すと、前に進み、いつものように処理を開始します。私はユーザーからの入力を期待していないので、これは奇妙です。アプリケーションには、コマンドラインまたはDBのいずれかの入力があります。
また、DBの問題ではないこともわかっています。アプリはテーブルロックを待っていません。これは、いくつかのファイルロックまたはSystem.outストリームがロックされていると関係がある可能性があります。後で私は、スクリーン上のキーストロークがアプリケーションを「目覚めさせる」ことを見るまで、可能性を考えなかった。
だから私は誰かが私がこれをさらにデバッグできる方向に向けるかもしれないかと思います。
私はそれが原因だと思う。私は時には私が選択モードにいることに気付かない。 – Scalable