6

私はこの質問に対する答えを探していますが、満足のいく答えが見つからないようです。ここにいる誰かが私を啓発してくれるかもしれません。

UIスレッドで変更されたイベントを発生させるためにBindingList<T>、オブジェクトへの参照を格納する子孫があります。SynchronizationContext

BindingList<T>これが、バックグラウンド スレッドではなく UI スレッドで作成および使用された可能性もあります。私が利用できるようなプロパティなしでこれを確認するにはどうすればよいInvokeRequiredですか? SynchronizationContext.SendUI スレッドで呼び出した結果はどうなりますか?

4

2 に答える 2

3

Send メソッドは同期的に実行され、バインドSynchronizationContext先のスレッドでデリゲートを呼び出します。SynchronizationContextSynchronizationContextUI スレッドにバインドされていて、コードが現在 UI スレッドで実行されている場合、デリゲートは直接呼び出され、スレッド間でマーシャリングする必要はありません。

于 2011-03-28T23:47:55.953 に答える