Я знал основные строительные блоки многопоточности в WPF, но у меня есть вопрос, который меня смущает.Как работает WPF Multi threading?
WPF приложения запускаются с двумя потоками:
один для оказания обработки, а другой для управления пользовательского интерфейса.
Это звучит хорошо, но нить UI беспокоит меня, UI Thread нет ничего, кроме резьбы Применения
нити, которая создает элемент WPF UI имеет элементы и другие потоков могут не взаимодействуют непосредственно с элементами пользовательского интерфейса, это известно как как сродство нитей.
Скажем, я два текстовое поле и одна кнопка в MyApplication и каждый текстовое поле имеют свои собственные DispatcherObject на кнопку мыши я обновить текстовое поле со значениями, надеюсь, что это будет сделано в Пользовательский интерфейс.
1.Now, Мой вопрос UI Нить поток приложения, Button будут иметь свои собственные DispatcherObject и два текстовых поля будут иметь свои собственные DispatcherObject, как этот поток пользовательского интерфейса, который имеет свой собственный DispatcherObject и отличается от этих элементов управления пользовательского интерфейса DispatcherObject может обновлять текстовые поля?
- Мой новый вопрос: если вы создаете новое текстовое поле в фоновом потоке, могу ли я обновить это текстовое поле из потока пользовательского интерфейса?
, пожалуйста, исправьте мое понимание, я не смог продолжить дальше.
Это звучит очень запутанно. Создайте конкретный образец, который показывает случаи вашей проблемы. –
@ DanielHilgarth, Не могли бы вы рассказать, какая часть сбивает с толку? – Selva