私はちょうどこのコードを書いた:
System.Threading.SynchronizationContext.Current.Post(
state => DoUpdateInUIThread((Abc)state),
abc);
しかし、System.Threading.SynchronizationContext.Current は null です
私はちょうどこのコードを書いた:
System.Threading.SynchronizationContext.Current.Post(
state => DoUpdateInUIThread((Abc)state),
abc);
しかし、System.Threading.SynchronizationContext.Current は null です
それを機能させるために。
あなたのクラスで
private SynchronizationContext synchronizationContext;
UI スレッド(メインスレッド) 内
synchronizationContext = System.Threading.SynchronizationContext.Current;
ワーカースレッドで
synchronizationContext.Post(
state => DoUpdateInUIThread((Abc)state),
abc);
この説明を参照してください。
SynchronizationContext.Current は、メイン スレッドでのみ設定されます (これは、実際には必要のない唯一のスレッドです)。
ブログ投稿では、回避策を提案しています。