обобщить правила многопоточности доступа silverlight - PullRequest
1 голос
/ 12 августа 2010

Может ли кто-то быть настолько любезным, чтобы дать мне краткий (в общем, хорошо) набор правил, для которых данные / методы могут и не могут быть доступны из вторичного (не-пользовательского) потока?

1 Ответ

1 голос
/ 12 августа 2010

Я бы сказал, что это любой объект DependencyObject, созданный UIThread.

Я бы предложил использовать этот метод расширения, когда вы не уверены ...

public static class Extensions
{
    public static void FastInvoke(this Dispatcher dispatcher, Action action)
    {
        if (dispatcher.CheckAccess())
            action.Invoke();
        else
            dispatcher.BeginInvoke(action);
    }
}

Используйте это так:

Dispatcher.FastInvoke(delegate
                {
                    StatusMessageText.Text = "OK";
                });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...