匿名の構築方法とShutDownHook
1289 ワード
匿名構築メソッドは、任意の構築メソッドの前に呼び出されます.Businessクラスの初期化時にキュー2にデータが挿入されていることを保証します.
static class Business{
BlockingQueue<Integer> queue1 = new ArrayBlockingQueue<Integer>(1);
BlockingQueue<Integer> queue2 = new ArrayBlockingQueue<Integer>(1);
{
try{
queue2.put(1);
}catch(Exception e){
e.printStackTrace();
}
}
}
shutdownhook, , serversocket 。
Runtime.getRuntime().addShutdownHook(new ShutdownHookThread(server));
class ShutdownHookThread extends Thread {
private ServerSocket server;
public ShutdownHookThread(ServerSocket server) {
this.server = server;
}
@Override
public void run() {
try {
server.close();
} catch (IOException e) {
e.printStackTrace();
} finally {
server = null;
}
}
}