Подписаться на Dispatcher в Silverlight / WPF - PullRequest
1 голос
/ 06 марта 2012

В каких случаях мне действительно нужно использовать метод IObservable <>. SubscribeOnDispatcher в приложениях Silverlight / WPF? То есть Я спрашиваю о конкретных случаях, когда этот вызов является обязательным.

Заранее спасибо

1 Ответ

1 голос
/ 06 марта 2012

Обязательно, когда эти условия выполняются:

  1. Ваш Observable основан на чем-то, что генерирует обратные вызовы / события, которые еще не гарантированно находятся в главном потоке пользовательского интерфейса (например, HttpWebRequest)
  2. Код, который отвечает на поступление этих элементов, должен манипулировать элементами пользовательского интерфейса
  3. Другой код в цепочке не должен выполняться до завершения предыдущих манипуляций с элементами пользовательского интерфейса.

Если 1 не соответствует истине, то из него уже поступают вещи в потоке пользовательского интерфейса.Если 2 не соответствует действительности, то присутствие в потоке пользовательского интерфейса не имеет значения.Если 3 не соответствует действительности, то код на этапе 2 может BeginInvoke работать с некоторым пользовательским интерфейсом на самом Dispatcher.

...