升级XR插件版本

This commit is contained in:
Sora丶kong
2026-03-02 17:56:21 +08:00
parent 8962657674
commit 60f512a9bc
1317 changed files with 110305 additions and 48249 deletions

View File

@@ -0,0 +1,62 @@
using System;
using UnityEditor.TestTools.TestRunner.Api;
namespace MCPForUnity.Editor.Services
{
/// <summary>
/// Thread-safe, minimal shared status for Unity Test Runner execution.
/// Used by editor readiness snapshots so callers can avoid starting overlapping runs.
/// </summary>
internal static class TestRunStatus
{
private static readonly object LockObj = new();
private static bool _isRunning;
private static TestMode? _mode;
private static long? _startedUnixMs;
private static long? _finishedUnixMs;
public static bool IsRunning
{
get { lock (LockObj) return _isRunning; }
}
public static TestMode? Mode
{
get { lock (LockObj) return _mode; }
}
public static long? StartedUnixMs
{
get { lock (LockObj) return _startedUnixMs; }
}
public static long? FinishedUnixMs
{
get { lock (LockObj) return _finishedUnixMs; }
}
public static void MarkStarted(TestMode mode)
{
lock (LockObj)
{
_isRunning = true;
_mode = mode;
_startedUnixMs = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();
_finishedUnixMs = null;
}
}
public static void MarkFinished()
{
lock (LockObj)
{
_isRunning = false;
_finishedUnixMs = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();
_mode = null;
}
}
}
}