From 040a93715965ab71d95d1778600629550a3c5042 Mon Sep 17 00:00:00 2001 From: GeWuYou <95328647+GeWuYou@users.noreply.github.com> Date: Sun, 15 Feb 2026 23:24:33 +0800 Subject: [PATCH] =?UTF-8?q?refactor(coroutine):=20=E4=BC=98=E5=8C=96Task?= =?UTF-8?q?=E8=BD=AC=E5=8D=8F=E7=A8=8B=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将AsCoroutine方法重命名为ToCoroutineEnumerator以提高语义清晰度 - 修改StartTaskAsCoroutine方法内部调用改为使用新的ToCoroutineEnumerator方法 - 为ToCoroutineEnumerator方法添加完整的XML文档注释 - 为泛型版本的ToCoroutineEnumerator方法添加类型参数和参数说明 - 统一方法命名规范,提高代码可读性 --- .../extensions/TaskCoroutineExtensions.cs | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/GFramework.Core/coroutine/extensions/TaskCoroutineExtensions.cs b/GFramework.Core/coroutine/extensions/TaskCoroutineExtensions.cs index 00b31dc..450e054 100644 --- a/GFramework.Core/coroutine/extensions/TaskCoroutineExtensions.cs +++ b/GFramework.Core/coroutine/extensions/TaskCoroutineExtensions.cs @@ -37,7 +37,7 @@ public static class TaskCoroutineExtensions /// 协程句柄 public static CoroutineHandle StartTaskAsCoroutine(this CoroutineScheduler scheduler, Task task) { - return scheduler.Run(task.AsCoroutine()); + return scheduler.Run(task.ToCoroutineEnumerator()); } /// @@ -49,21 +49,28 @@ public static class TaskCoroutineExtensions /// 协程句柄 public static CoroutineHandle StartTaskAsCoroutine(this CoroutineScheduler scheduler, Task task) { - return scheduler.Run(task.AsCoroutine()); + return scheduler.Run(task.ToCoroutineEnumerator()); } + /// - /// 创建等待Task的协程 + /// 将Task转换为协程枚举器 /// - public static IEnumerator AsCoroutine(this Task task) + /// 要转换的Task + /// 协程枚举器 + public static IEnumerator ToCoroutineEnumerator(this Task task) { yield return task.AsCoroutineInstruction(); } + /// - /// 创建等待泛型Task的协程 + /// 将泛型Task转换为协程枚举器 /// - public static IEnumerator AsCoroutine(this Task task) + /// Task返回值的类型 + /// 要转换的泛型Task + /// 协程枚举器 + public static IEnumerator ToCoroutineEnumerator(this Task task) { yield return task.AsCoroutineInstruction(); }