Просмотр исходного кода

同一帧删掉fiber,再添加id相同的fiber,加了异常检测,这种情况要await Remove再添加

tanghai 2 лет назад
Родитель
Сommit
9ab1cfa578
1 измененных файлов с 5 добавлено и 2 удалено
  1. 5 2
      Unity/Assets/Scripts/Core/World/Module/Fiber/FiberManager.cs

+ 5 - 2
Unity/Assets/Scripts/Core/World/Module/Fiber/FiberManager.cs

@@ -66,8 +66,11 @@ namespace ET
             try
             {
                 Fiber fiber = new(fiberId, zone, sceneType, name);
-                
-                this.fibers.TryAdd(fiberId, fiber);
+
+                if (!this.fibers.TryAdd(fiberId, fiber))
+                {
+                    throw new Exception($"same fiber already existed, if you remove, please await Remove then Create fiber! {fiberId}");
+                }
                 this.schedulers[(int) schedulerType].Add(fiberId);
                 
                 TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>();