I just wrote this code:
System.Threading.SynchronizationContext.Current.Post(
state => DoUpdateInUIThread((Abc)state),
abc);
but System.Threading.SynchronizationContext.Current is null
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);