JavaTM 2
Platform
Std. Ed. v1.4.0

java.awt
インタフェース ActiveEvent

既知の実装クラスの一覧:
InvocationEvent

public interface ActiveEvent

自分自身をディスパッチできるイベントのためのインタフェースです。このインタフェースを実装することにより、イベントはイベントキューに入れられ、EventDispatchThread を使用してイベントがディスパッチされるときに dispatch() メソッドが呼び出されます。

この機構は、デッドロックの発生を避けるために非常に有効です。スレッドがクリティカルセクションで実行されている場合、つまりスレッドが 1 つまたは複数のモニターに入っている場合、ほかの同期コードを呼び出すとデッドロックが発生することがあります。デッドロックの発生を避けるため、ActiveEvent を作成して 2 番目のセクションのコードをあとで実行させることができます。モニターで競合がある場合、最初のスレッドが終了してモニターから抜けるまで、2 番目のスレッドはブロックされます。

セキュリティ上の理由から、ActiveEvent を使用し、クリティカルスレッドから信頼できないコードが呼び出されるのを避けなければならない場合があります。たとえば、この機能をピアの実装で使用すると、システムスレッドからのユーザコードの呼び出しを避けることができます。これにより、デッドロックやサービス妨害攻撃を回避できます。

導入されたバージョン:
1.2

メソッドの概要
 void dispatch()
          イベントをターゲットであるイベントソースのリスナーに送るか、あるいはこのイベントに指定されている処理を実行します。
 

メソッドの詳細

dispatch

public void dispatch()
イベントをターゲットであるイベントソースのリスナーに送るか、あるいはこのイベントに指定されている処理を実行します。


JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.