香草的天空 2021/12/1 21:16:23
悬赏10元, 为什么当前线程id等于这个就直接调用而不是post呢?
post本意是异步的,并非直接这么调用,即使是再一个线程里
目前注释掉这段代码,我们不会闪退。(同事说大概测了10天没有了) 加了这段代码,经常会闪退
public void Post(Action action)
{
if (Thread.CurrentThread.ManagedThreadId == this.threadId)
{
try
{
action();
}
catch (Exception e)
{
#if NOT_UNITY
Log.Error(e);
#else
UnityEngine.Debug.LogError(e);
#endif
}
return;
}
this.queue.Enqueue(action);
}
群内回答