Страницы

Поиск по вопросам

среда, 29 января 2020 г.

UI потоки в java

#java #многопоточность #ui #терминология


Что такое UI потоки в Java? В чем их отличие от обычных потоков Thread?
    


Ответы

Ответ 1



UI поток - обычный поток, но в нем и только в нем следует обновлять состояние вашего GUI или его элементов. Как правило представляет собой поток извлекающий из очереди задачи для обновления или перерисовки интерфейса. Если вам надо обновить ваш GUI не из UI потока, то как в Swing так и в JavaFX есть методы, которые добавляют задачи по добавлению GUI в эту очередь. Сделано так для того, что бы не занимать синхронизацией обращений к элементам интерфейса и не допустить параллельного выполнения операций над ним.

Ответ 2



Добавлю к ответу @АлександрМартынцев UI Thread это частный вид Event dispatching thread, который в свою очередь является частью концепции Event Driven Programming, разработанной, когда большинства юзеров SO еще не было даже в планах их родителей :) - это концепция была рождена в недрах компании IBM еще в 70-х годах и нашла свое отражение в первых оконных (или как сейчас модно говорить GUI) системах - типа Xerox Parc. Любая GUI система имеет такой тред, в .NET и Java/Android это называется UI Thread, в других системах по другому, но смысл один и тот же

Комментариев нет:

Отправить комментарий