|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
public interface ActiveEvent
知道如何對自身進行指派的事件的介面。通過實作此介面,可以使用 EventDispatchThread
將一個事件放置到事件佇列,並且指派該事件時將調用其 dispatch()
方法。
這是一種非常有用的避免死鎖的機制。如果執行緒正在執行某個關鍵部分(即它已經進入了一個或多個監視器),調用其他同步程式碼可能導致死鎖。為了避免潛在的死鎖,可以創建一個 ActiveEvent
,以便以後運行程式碼的第二部分。如果存在監視器爭用,那麼在第一個執行緒已經完成工作並退出監視器之前,第二個執行緒將一直處於阻塞狀態。
出於安全性考慮,使用 ActiveEvent
來避免從一個關鍵執行緒中調用不受信任的程式碼通常是很值得的。例如,同位體實作可以使用此設施來避免從系統執行緒調用使用者程式碼。這樣做可以避免潛在的死鎖和拒絕服務攻擊。
方法摘要 | |
---|---|
void |
dispatch()
將事件指派給目標、事件源偵聽器,或者做任何希望此事件去做的事情。 |
方法詳細資訊 |
---|
void dispatch()
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。