I just wrote this code:
System.Threading.SynchronizationContext.Current.Post(
state => DoUpdateInUIThread((Abc)state),
abc);
but System.Threading.SynchronizationContext.Current is null
I just wrote this code:
System.Threading.SynchronizationContext.Current.Post(
state => DoUpdateInUIThread((Abc)state),
abc);
but System.Threading.SynchronizationContext.Current is null
See this explanation.
SynchronizationContext.Current is only set in the main thread (which is the only thread where you don't actually need it)
The blog post proposes a workaround.
To get it to work.
In your class
private SynchronizationContext synchronizationContext;
In the UI thread (main thread)
synchronizationContext = System.Threading.SynchronizationContext.Current;
In the worker thread
synchronizationContext.Post(
state => DoUpdateInUIThread((Abc)state),
abc);