Преглед изворни кода

修复一个ProcessInnerSender的bug

tanghai пре 1 година
родитељ
комит
bc8c44471e

+ 4 - 3
Unity/Assets/Scripts/Core/Fiber/Module/Actor/ProcessInnerSenderSystem.cs

@@ -142,9 +142,7 @@ namespace ET
             }
 
             Type requestType = request.GetType();
-            MessageSenderStruct messageSenderStruct = new(actorId, requestType, needException);
-            self.requestCallback.Add(rpcId, messageSenderStruct);
-
+            
             IResponse response;
             if (!self.SendInner(actorId, (MessageObject)request))  // 纤程不存在
             {
@@ -152,6 +150,9 @@ namespace ET
                 return response;
             }
             
+            MessageSenderStruct messageSenderStruct = new(actorId, requestType, needException);
+            self.requestCallback.Add(rpcId, messageSenderStruct);
+            
             async ETTask Timeout()
             {
                 await fiber.Root.GetComponent<TimerComponent>().WaitAsync(ProcessInnerSender.TIMEOUT_TIME);