Интерфейс ActiveEvent
- Все известные реализующие классы:
InvocationEvent
public interface ActiveEvent
dispatch() будет вызван при отправке события, используя EventDispatchThread. Это очень полезный механизм для предотвращения тупиков. Если поток выполняется в критической секции (т. е. он вошел в один или несколько мониторов), вызов другого синхронизированного кода может привести к тупику. Чтобы избежать потенциальных тупиков, можно создать ActiveEvent, чтобы выполнить вторую секцию кода в более позднее время. Если возникает конкуренция за монитор, второй поток просто заблокируется, пока первый поток не завершит свою работу и не выйдет из своих мониторов.
По соображениям безопасности часто желательно использовать ActiveEvent, чтобы избежать вызова недоверенного кода из критического потока. Например, реализации партнеров могут использовать эту функцию, чтобы избежать вызовов пользовательского кода из системного потока. Это позволяет избежать потенциальных тупиков и атак типа «отказ в обслуживании».
- С:
- 1.2
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
dispatch() |
Отправить событие его целевому объекту, слушателям источника события или выполнить то, что от этого события ожидается. |
Подробное описание методов
dispatch
void dispatch()
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.desktop/java/awt/ActiveEvent.html