using System.Collections; using System.Collections.Generic; using System.Runtime.CompilerServices; using System.Threading.Tasks; using UnityEngine; namespace TModule.Runtime { public static class ExtensionAsyncOperation { public static TaskAwaiter GetAwaiter(this AsyncOperation asyncOp) { var tcs = new TaskCompletionSource(); asyncOp.completed += obj => { tcs.SetResult(null); }; return ((Task)tcs.Task).GetAwaiter(); } } }