这个问题稍微看一下UnityCSRef那个工程源码报错就能解决,那个报错函数第一行有个强转失败.
var synchroContext = (UnitySynchronizationContext) SynchronizationContext.Current;
伸手党可以把这个代码放在Unity.Core.dll
using System.Threading; namespace ET { public class SynchronizationContextKeeper { #if UNITY_EDITOR private static SynchronizationContext UX; [UnityEditor.InitializeOnLoadMethod] static void Init() { UX = SynchronizationContext.Current; } #endif public static void BackToUX() { #if UNITY_EDITOR SynchronizationContext.SetSynchronizationContext(UX); #endif } } }
然后在World.cs 的Dispose()中调用,在Dispose函数最后一行调用即可~