今日プログラムを実行中にバグが発生しました。つまり、メイン関数によって実行されたサブスレッド タスクが完了する前に起動されました。ただし、メインプログラムに sleep() を追加すると、サブスレッドは正常に実行され、起動されます (ただし、スリープ時間が短すぎる場合は動作しません)。デバッグ サブスレッドは主に、データベース操作を実行するコード行でスタックします (おそらく、処理に時間がかかり、メイン スレッドが終了を待つ時間がないためです...)。
高洛峰2017-06-12 09:23:01
子スレッドが設定されているかどうかを確認してください setDaemon(true)
、Jvm は次の状況で終了します:
実行中のすべてのスレッドがデーモンスレッドの場合
または非デーモンスレッドが実行されていない場合