12345678910111213141516171819202122232425262728293031 |
- using System;
- using System.Threading;
- namespace ET
- {
- public class MainThreadSynchronizationContext: Singleton<MainThreadSynchronizationContext>, ISingletonUpdate
- {
- private readonly ThreadSynchronizationContext threadSynchronizationContext = new ThreadSynchronizationContext();
- public MainThreadSynchronizationContext()
- {
- SynchronizationContext.SetSynchronizationContext(this.threadSynchronizationContext);
- }
-
- public void Update(int timeMS)
- {
- this.threadSynchronizationContext.Update();
- }
-
- public void Post(SendOrPostCallback callback, object state)
- {
- this.Post(() => callback(state));
- }
-
- public void Post(Action action)
- {
- this.threadSynchronizationContext.Post(action);
- }
- }
- }
|