示例#1
0
 public void GetResult(short token)
 {
     if (source == null)
     {
         if (exception != null)
         {
             exception.Throw();
         }
     }
     else
     {
         try
         {
             source.GetResult(token);
             status = UniTaskStatus.Succeeded;
         }
         catch (Exception ex)
         {
             exception = ExceptionDispatchInfo.Capture(ex);
             if (ex is OperationCanceledException)
             {
                 status = UniTaskStatus.Canceled;
             }
             else
             {
                 status = UniTaskStatus.Faulted;
             }
             throw;
         }
         finally
         {
             source = null;
         }
     }
 }
 public UniTask(IUniTaskSource source, short token)
 {
     this.source = source;
     this.token  = token;
 }
 private PromiseAwaiterPair(IUniTaskSource promise, in TAwaiter awaiter)
示例#4
0
 public IsCanceledSource(IUniTaskSource <T> source)
 {
     this.source = source;
 }
示例#5
0
 public UniTask(IUniTaskSource <T> source, short token)
 {
     this.source = source;
     this.token  = token;
     this.result = default;
 }
示例#6
0
 public UniTask(T result)
 {
     this.source = default;
     this.token  = default;
     this.result = result;
 }
示例#7
0
 public MemoizeSource(IUniTaskSource source)
 {
     this.source = source;
 }
示例#8
0
 public AsyncUnitSource(IUniTaskSource source)
 {
     this.source = source;
 }