WPF, Связывающий с данными потокобезопасность?

Хорошо позволяет, говорят, что у меня есть объект, к которому я связываю с данными, он реализует INotifyPropertyChanged для сообщения GUI, когда значение изменилось...

если бы я инициировал это от другого потока, чем поток GUI, как wpf вел бы себя?

и это удостоверится, что получает значение свойства из памяти а не кэша CPU?

более или менее я спрашиваю, блокирует ли wpf действительно () на объекте, содержащем свойство...

28
задан Peter 31 March 2010 в 13:41
поделиться

2 ответа

Изменения значений, инициированные INotifyPropertyChanged , автоматически упорядочиваются обратно диспетчеру. ( http://blog.lab49.com/archives/1166 )

Активируйте это событие в любом потоке, который вам нравится ...


Изменения значений, инициированные INotifyCollectionChanged , являются НЕ доставлен диспетчеру. ( http://csharplive.wordpress.com/2008/09/11/wpf-data-binding-observablecollection-cross-thread-binding-support/ )

Если вам нужно обновить наблюдаемый коллекции из другого потока, следуйте советам в этой ссылке

41
ответ дан 28 November 2019 в 03:24
поделиться

На практике кажется, что он работает так, как ожидалось, и кажется потоком -safe (не видел ничего странного или исключений в результате обновления в фоновом потоке). Я считаю, что при необходимости он обращается к потоку пользовательского интерфейса, но я не слишком знаком с внутренними функциями.

0
ответ дан 28 November 2019 в 03:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: