1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/jmpp-CommonEvent

 / Детали:

Когда EventHandle обрабатывает долгие операции, многие события не будут обрабатываться?

Предстоит сделать
Владелец
Создано  
15.05.2025
public class EventTest {

    public static void main(String[] args) {
        EventService.init(null);
        EventService.registerEventHandler("time", new TimeEventHandle());

        for (int i = 0; i < 5; i++) {
            Event e = new Event("time", System.currentTimeMillis());

            EventService.fireEvent(e);
            System.out.println("Публикуется событие: " + e.getId());
            Lang.sleep(100);
        }
        System.out.println("События опубликованы");
        EventService.stop();
    }

}
public class TimeEventHandle implements EventHandler {

    private static Logger log = LoggerFactory.getLogger(TimeEventHandle.class);

    @Override
    public Object onEvent(Event event) {
        log.debug("Сообщение: " + event.getId() + " " + event.getParam());
        Lang.sleep(R.random(1, 20) * 100);
        log.debug("Сообщение: " + event.getId() + " Обработка завершена");
        return null;
    }

}

Публикуется событие:vlDVP1LC
13:08:53.472 DEBUG chat.event.TimeEventHandle - Сообщение: vlDVP1LC 1459228133146
Публикуется событие:0vWKRWz2
Публикуется событие:yy9Z0geZ
Публикуется событие:9JBaxnAR
Публикуется событие:6eSfOtzB
События опубликованы
13:08:55.277 DEBUG chat.event.TimeEventHandle - Сообщение: vlDVP1LC Обработка завершена

Обрабатывается только одно событие!

Комментарий (0)

GitLife Service Account Задача создана

Вход Перед тем как оставить комментарий

Статус
Ответственный
Контрольная точка
Pull Requests
Связанные запросы на слияние могут быть закрыты после их объединения
Ветки
Дата начала   -   Крайний срок
-
Закрепить/Открепить
Приоритет
Участники(1)
1
https://api.gitlife.ru/oschina-mirror/jmpp-CommonEvent.git
git@api.gitlife.ru:oschina-mirror/jmpp-CommonEvent.git
oschina-mirror
jmpp-CommonEvent
jmpp-CommonEvent