スレッドがすぐに開始されない理由を誰かが知っていますか? つまり、10 分、20 .. スレッドが開始されません ... logger は Java Logger の単純なデコレータです ...
これがコードの始まりです:
....
log.info("client streams prepared");
messagelistener = new Thread(new Listener(input, this));
messagelistener.start();
log.info("Connection prepared");
....
そしてリスナーを始めました
public class Listener implements Runnable {
private final MyLogger logger = MyLogger.getLogger();
private final ObjectInputStream input;
private final Connection connection;
public Listener(ObjectInputStream input, Connection callback) {
connection = callback;
this.input = input;
logger.info("Listener created");
}
@Override
public void run() {
logger.info("listener thread in connection with "+ connection.getUser().getDisplayName() + " is started");
//.....samecode
logger.info("listener thread in connection with "
+ connection.getUser().getDisplayName() + " is stopped");
}
}
ログ:
2013-07-29 22:36:58 MyLogger info INFO: client streams prepared
2013-07-29 22:36:58 MyLogger info INFO: Listener created
2013-07-29 22:36:58 MyLogger info INFO: Connection prepared
印刷では、開始前と開始後に情報を確認できますが、メソッド実行の最初の行ではなく、起動から 10 分以上経過している場合、システムがロードされていません。なぜ機能しないのかわかりません。誰かが私が間違っていることを私に説明できますか?