瀏覽代碼

Default value of ValueTask is good enough to report completion.

Bart De Smet 7 年之前
父節點
當前提交
8fea84666d

+ 1 - 1
Ix.NET/Source/System.Interactive.Async/System/Linq/Operators/Defer.cs

@@ -111,7 +111,7 @@ namespace System.Linq
 
                     public T Current => throw new ObjectDisposedException("this");
 
-                    public ValueTask DisposeAsync() => TaskExt.CompletedTask;
+                    public ValueTask DisposeAsync() => default;
 
                     public ValueTask<bool> MoveNextAsync() => throw new ObjectDisposedException("this");
                 }

+ 0 - 1
Ix.NET/Source/System.Interactive.Async/TaskExt.cs

@@ -6,7 +6,6 @@ namespace System.Threading.Tasks
 {
     internal static class TaskExt
     {
-        public static readonly ValueTask CompletedTask = new ValueTask(Task.FromResult(true));
         public static readonly ValueTask<bool> Never = new ValueTask<bool>(new TaskCompletionSource<bool>().Task);
     }
 }

+ 1 - 1
Ix.NET/Source/System.Linq.Async/System/Linq/AsyncIterator.cs

@@ -38,7 +38,7 @@ namespace System.Linq
             _current = default;
             _state = AsyncIteratorState.Disposed;
 
-            return TaskExt.CompletedTask;
+            return default;
         }
 
         public TSource Current => _current;

+ 1 - 1
Ix.NET/Source/System.Linq.Async/System/Linq/Operators/Empty.cs

@@ -44,7 +44,7 @@ namespace System.Linq
 
             public IAsyncEnumerator<TValue> GetAsyncEnumerator(CancellationToken cancellationToken) => this;
 
-            public ValueTask DisposeAsync() => TaskExt.CompletedTask;
+            public ValueTask DisposeAsync() => default;
         }
     }
 }

+ 2 - 2
Ix.NET/Source/System.Linq.Async/System/Linq/Operators/ToAsyncEnumerable.cs

@@ -49,7 +49,7 @@ namespace System.Linq
                             return false;
                         },
                         () => value,
-                        () => TaskExt.CompletedTask);
+                        () => default);
                 });
         }
 
@@ -118,7 +118,7 @@ namespace System.Linq
                             ctr.Dispose();
                             subscription.Dispose();
                             // Should we cancel in-flight operations somehow?
-                            return TaskExt.CompletedTask;
+                            return default;
                         });
                 });
         }

+ 0 - 1
Ix.NET/Source/System.Linq.Async/System/Threading/Tasks/TaskExt.cs

@@ -6,7 +6,6 @@ namespace System.Threading.Tasks
 {
     internal static class TaskExt
     {
-        public static readonly ValueTask CompletedTask = new ValueTask(Task.FromResult(true));
         public static readonly Task<int> MinusOne = Task.FromResult(-1);
     }
 }