java 鉤子方法

2021-08-28 01:54:05 字數 823 閱讀 2974

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...