Files
2025-11-30 08:35:03 +02:00

30 lines
779 B
C#

using System;
using System.Threading;
namespace Unity.PlasticSCM.Editor.UI
{
internal static class EditorDispatcher
{
internal static void InitializeMainThreadIdAndContext(
int mainThreadId,
SynchronizationContext mainUnitySyncContext)
{
mMainThreadId = mainThreadId;
mMainUnitySyncContext = mainUnitySyncContext;
}
internal static bool IsOnMainThread
{
get { return Thread.CurrentThread.ManagedThreadId == mMainThreadId; }
}
internal static void Dispatch(Action task)
{
mMainUnitySyncContext.Post(_ => task(), null);
}
static SynchronizationContext mMainUnitySyncContext;
static int mMainThreadId;
}
}