調べてもわからなかったので質問させていただきます。
public static void main(String[] args){
while(true){
try{
System.out.println("hoge");
Thread.sleep(10000); //10秒待つ
System.out.println("piyo");
method(); //1秒程度の処理
}catch(Exception e){
e.printStackTrace();
}
}
}
上記のような構文で、10秒ごとにある処理を行うプログラムを永続的に動かしているのですが、
7、8時間ぐらい経つと例外も何も出さずに止まってしまいます。
ログを見直すと、必ず最後の出力がhogeになっているので、Thread.sleep(10000)の中で止まっていると思われます。
環境はさくらのレンタルサーバで動かしており、OSはFreeBSD 8.1です。
もしかしたらJavaの問題ではないのかもしれませんが、解決策はありますでしょうか?