- 所有已知的实现类:
-
InvocationEvent
public interface ActiveEvent
一个可以自行分发的事件接口。通过实现这个接口,一个事件可以被放置在事件队列中,当事件被分发时,它的
dispatch()
方法将被调用,使用EventDispatchThread
。
这是一个非常有用的机制,可以避免死锁。如果一个线程正在执行在关键部分(即,它已经进入一个或多个监视器),调用其他同步代码可能会导致死锁。为了避免潜在的死锁,可以创建一个ActiveEvent
在稍后的时间运行第二部分代码。如果在监视器上有争用,第二个线程将简单地阻塞,直到第一个线程完成其工作并退出其监视器。
出于安全原因,通常希望使用ActiveEvent
来避免从关键线程调用不受信任的代码。例如,对等实现可以使用此功能来避免从系统线程调用用户代码。这样做可以避免潜在的死锁和拒绝服务攻击。
- 自 JDK 版本:
- 1.2
-
Method Summary
-
Method Details
-
dispatch
void dispatch()将事件分派到其目标、事件源的监听器,或执行此事件应该执行的操作。
-