Какая польза от объекта Dispatcher в WPF? - PullRequest
22 голосов
/ 01 октября 2008

Для чего нужен объект Dispatcher в WPF?

Ответы [ 2 ]

26 голосов
/ 19 ноября 2010

Почти каждый элемент WPF имеет сходство потоков. Это означает, что доступ к такому элементу должен осуществляться только из потока, создавшего этот элемент. Для этого каждый элемент, для которого требуется сходство потоков, в конечном итоге является производным от класса DispatcherObject. Этот класс предоставляет свойство с именем Dispatcher, которое возвращает объект Dispatcher, связанный с элементом WPF.

Класс Dispatcher используется для выполнения работы над присоединенным потоком. У него есть очередь рабочих элементов, и он отвечает за выполнение рабочих элементов в потоке диспетчера.

Вы можете найти по следующей ссылке более подробную информацию по этому вопросу: http://blogs.microsoft.co.il/blogs/arik/archive/2010/08/12/wpf-inside-out-dispatcher.aspx

13 голосов
/ 01 октября 2008

Диспетчер часто используется для вызова вызовов в другом потоке. Например, если у вас работает фоновый поток, и вам нужно обновить поток пользовательского интерфейса, вам потребуется диспетчер, чтобы сделать это.

...