Несколько потоков рассылки событий - PullRequest
6 голосов
/ 06 сентября 2011

Я новичок в Java Swing, и мой вопрос связан с очередями событий и потоками рассылки.

Я прочитал, что возможно иметь несколько очередей событий, каждая на AppContext экземпляр.Точно так же это означает, что каждая очередь событий AppContext имеет свой собственный поток отправки событий.

Ответы [ 2 ]

3 голосов
/ 06 сентября 2011

Насколько я знаю, возможно иметь только один поток отправки событий.

Видимо AppContext не предназначен для использования разработчиками , хотя я не очень знаком с ним.

1 голос
/ 06 сентября 2011

1) в основном вам нужно было только знать, будет ли ваш код выполнен на EDT (все изменения должны быть сделаны на EDT),

2) если у вас есть какие-либо сомнения, можно протестировать

if (EventQueue.isDispatchThread()) {

или (это то же самое и возвращает true, если на EDT)

if (SwingUtilities.isEventDispatchThread()) {

больше здесь или здесь

3) все выходные данные фоновых задач должны быть заключены в invokeLater(), базовые сведения о Concurency в Swing

...