2012-01-06 16 views

答えて

8

それはあなたが「強制的に」によって何を意味するかのビットを依存し、私はあなたがシャットダウンフックを追加したい期待しています。

シャットダウンフックは、Javaがシャットダウンしようとするたびに呼び出される小さなスレッドです。あなたはそうのような、ランタイムAPIを使用して1を追加することができます:あなた本当には(マシンをオフにする、またはキルを実行することにより、-9、その上、)シャットダウンを強制する場合は、オペレーティング・システムを、もちろん

Runtime.getRuntime().addShutdownHook(Thread hook) 

ます何かをきれいにするチャンスを与えずにJavaをシャットダウンしてください。その場合、あなたはそれについて何もすることができません。

+0

何でSystem.exitについて()?私はshutdownhookもこのシナリオで呼ばれることはないと思います。 – Manish

+0

はい、System.exit()で呼び出されます。 OSがJavaよりもシャットダウンを強制して、問題がある場合のみです。 – Erica

+0

説明をありがとう! – Manish

1

これはあなたが望むものになるでしょう:

Runtime.getRuntime().addShutdownHook(new Thread() { 
    public void run() { 
     // release your resource 
    } 
}); 
1

あなたはShutdownhookを使用する必要があります。次に例を示します。

Runtime.getRuntime().addShutdownHook ( 
new Thread() { 
      @Override  
     public void run() {  
      System.out.println ("Shutdown hook"); 

     }  
    }); 
関連する問題