JavaTM 2 Platform
Std. Ed. v1.3

java.awt
インタフェース ActiveEvent

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

public interface ActiveEvent

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

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

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

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

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

メソッドの詳細

dispatch

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

JavaTM 2 Platform
Std. Ed. v1.3

バグや機能要求の報告
さらに詳しい API リファレンスおよび開発者ドキュメントについては、 Java 2 SDK SE Developer Documentation を参照してください。このドキュメントには、概念、用語の定義、回避策、 実用的なコード例など、開発者を対象にした詳細な解説が掲載されています。

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