コード例 #1
0
        public void UniTask()
        {
            UniTaskCompletionSource <object> deferred = new UniTaskCompletionSource <object>();
            var promise = deferred.Task;

            for (int i = 0; i < N; ++i)
            {
                int index = i;
                promise = promise
                          .ContinueWith(_ => UniTaskHelper.uniVoids[index].Task)
                          .ContinueWith(() => UniTaskHelper.uniVectors[index].Task)
                          .ContinueWith(_ => UniTaskHelper.uniObjects[index].Task);
            }

            promise.Forget();
            deferred.TrySetResult(Instances.obj);
            UniTaskHelper.ResolveCompletionSources();
        }
コード例 #2
0
 public void CleanupUniTasks()
 {
     UniTaskHelper.ClearUniTasks();
 }
コード例 #3
0
 public void SetupUniTasks()
 {
     UniTaskHelper.SetUniTasks();
 }
コード例 #4
0
 public void CleanupUniTasks()
 {
     UniTaskHelper.ClearContinuationSources();
 }
コード例 #5
0
 public void SetupUniTasks()
 {
     UniTaskHelper.SetContinuationSources(N);
 }
コード例 #6
0
 public void UniTask()
 {
     _ = AwaitUniTasks();
     UniTaskHelper.ResolveCompletionSources();
 }