Как реализовать простую задачу в Java Swing

У меня есть приложение с графическим интерфейсом, которое становится довольно медленным. Я хочу начать вводить синхронизацию для различных задач с графическим интерфейсом - однако многие из наших действий с графическим интерфейсом запускают другие действия, которые затем "вызывают позже". инициировать другие действия.

В конце концов, все успокаивается, и больше нечего делать. В настоящее время я хочу остановить таймер и сообщить, как долго этот GUI & quot; action & quot; взял.

Я решил, что способ сделать это, чтобы реализовать метод под названиемinvokeOnceIdle(Runnable task), Метод выполнит поставленную задачу только после того, как AWTEventQueue станет "пустым". то есть поставляемая «задача»; должно быть последним в очереди.

Один из способов сделать это состоит в том, если существует способ указать «низший» уровень. приоритетSwingUtilities.invokeLater - но это невозможно.

Затем я посмотрел, смогу ли я «invokeLater» quot; Runnable, который проверяет, является ли очередь событий «пустой» - но публичного способа увидеть, является ли очередь событий фактически пустой, нет.

Какой лучший способ сделать это?

Ответы на вопрос(2)

Ваш ответ на вопрос