runtime.getruntime().addshutdownhook(shutdownhook);
這個方法的含義說明:
這個方法的意思就是在jvm中增加乙個關閉的鉤子,當jvm關閉的時候,會執行系統中已經設定的所有通過方法addshutdownhook新增的鉤子,當系統執行完這些鉤子後,jvm才會關閉。所以這些鉤子可以在jvm關閉的時候進行記憶體清理、物件銷毀等操作。
一、編寫個測試類
package com.test.hook;
public class testshutdownhook
};// 定義執行緒2
thread thread2 = new thread()
};// 定義關閉執行緒
thread shutdownthread = new thread()
};// jvm關閉的時候先執行該執行緒鉤子
runtime.getruntime().addshutdownhook(shutdownthread);
thread1.start();
thread2.start();
}}
列印結果:
thread2...
thread1...
shutdownthread...
或者:寫道
thread2...
thread1...
shutdownthread...
結論:無論是先列印thread1還是thread2,shutdownthread 執行緒都是最後執行的(因為這個執行緒是在jvm執行關閉前才會執行)。
java 鉤子方法
2011 11 30 14 09 21 標籤 休閒 addshutdownhook職場 runtime.getruntime addshutdownhook shutdownhook 這個方法的含義說明 一 編寫個測試類 package com.test.hook public class test...
Tornado鉤子方法
class bloghandler requesthandler def set default headers self 在此方法中,設定預設的響應頭 print set default headers鉤子方法 def initialize self,args,kwargs 接收路由列表中的初始化...
模板方法模式(鉤子方法)
模板方法定義了操作中的演算法骨架,將某些步驟掩飾到子類中實現,這樣就可以在不改變和演算法前提的情況下,重新定義該演算法的某些特定步驟。採用模板方法模式的核心思路是處理某個流程的 已經具備,但其中某些節點的 暫時不能確定。此時可以使用模板方法。在開發中很多地方用到了模板方法 1 資料庫的訪問,封裝 2...