diff --git a/src/libraries/System.Private.CoreLib/src/System.Private.CoreLib.Shared.projitems b/src/libraries/System.Private.CoreLib/src/System.Private.CoreLib.Shared.projitems
index 2c5f234cc2d163..99a96a18e05294 100644
--- a/src/libraries/System.Private.CoreLib/src/System.Private.CoreLib.Shared.projitems
+++ b/src/libraries/System.Private.CoreLib/src/System.Private.CoreLib.Shared.projitems
@@ -1287,8 +1287,8 @@
-
-
+
+
diff --git a/src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/FutureFactory.cs b/src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/TaskFactory_T.cs
similarity index 100%
rename from src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/FutureFactory.cs
rename to src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/TaskFactory_T.cs
diff --git a/src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/Future.cs b/src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/Task_T.cs
similarity index 99%
rename from src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/Future.cs
rename to src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/Task_T.cs
index e9be1f3d76ba7e..e6a5b6dc565770 100644
--- a/src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/Future.cs
+++ b/src/libraries/System.Private.CoreLib/src/System/Threading/Tasks/Task_T.cs
@@ -54,7 +54,7 @@ namespace System.Threading.Tasks
/// and may be used from multiple threads concurrently.
///
///
- [DebuggerTypeProxy(typeof(SystemThreadingTasks_FutureDebugView<>))]
+ [DebuggerTypeProxy(typeof(SystemThreadingTasks_TaskDebugView<>))]
[DebuggerDisplay("Id = {Id}, Status = {Status}, Method = {DebuggerDisplayMethodDescription}, Result = {DebuggerDisplayResultDescription}")]
public class Task : Task
{
@@ -1172,16 +1172,16 @@ internal Task ContinueWith(Func, TNewResul
out TaskCreationOptions creationOptions,
out InternalTaskOptions internalOptions);
- Task continuationFuture = new ContinuationResultTaskFromResultTask(
+ Task continuationTask = new ContinuationResultTaskFromResultTask(
this, continuationFunction, null,
creationOptions, internalOptions
);
// Register the continuation. If synchronous execution is requested, this may
// actually invoke the continuation before returning.
- ContinueWithCore(continuationFuture, scheduler, cancellationToken, continuationOptions);
+ ContinueWithCore(continuationTask, scheduler, cancellationToken, continuationOptions);
- return continuationFuture;
+ return continuationTask;
}
#endregion
@@ -1393,16 +1393,16 @@ internal Task ContinueWith(Func, object?,
out TaskCreationOptions creationOptions,
out InternalTaskOptions internalOptions);
- Task continuationFuture = new ContinuationResultTaskFromResultTask(
+ Task continuationTask = new ContinuationResultTaskFromResultTask(
this, continuationFunction, state,
creationOptions, internalOptions
);
// Register the continuation. If synchronous execution is requested, this may
// actually invoke the continuation before returning.
- ContinueWithCore(continuationFuture, scheduler, cancellationToken, continuationOptions);
+ ContinueWithCore(continuationTask, scheduler, cancellationToken, continuationOptions);
- return continuationFuture;
+ return continuationTask;
}
#endregion
@@ -1411,11 +1411,11 @@ internal Task ContinueWith(Func, object?,
}
// Proxy class for better debugging experience
- internal sealed class SystemThreadingTasks_FutureDebugView
+ internal sealed class SystemThreadingTasks_TaskDebugView
{
private readonly Task m_task;
- public SystemThreadingTasks_FutureDebugView(Task task)
+ public SystemThreadingTasks_TaskDebugView(Task task)
{
Debug.Assert(task != null);
m_task = task;
diff --git a/src/libraries/System.Runtime/tests/System.Threading.Tasks.Tests/Task/TaskAPMTest.cs b/src/libraries/System.Runtime/tests/System.Threading.Tasks.Tests/Task/TaskAPMTest.cs
index 27731c560ddea2..9fe6a65a8b37d0 100644
--- a/src/libraries/System.Runtime/tests/System.Threading.Tasks.Tests/Task/TaskAPMTest.cs
+++ b/src/libraries/System.Runtime/tests/System.Threading.Tasks.Tests/Task/TaskAPMTest.cs
@@ -22,7 +22,7 @@ namespace System.Threading.Tasks.Tests
public sealed class TaskAPMTests : IDisposable
{
///
- /// Used to indicate whether to test TPL's Task or Future functionality for the APM pattern
+ /// Used to indicate whether to test TPL's Task or Task functionality for the APM pattern
///
private bool _hasReturnType;
@@ -234,7 +234,7 @@ public void EndDoTask(IAsyncResult asyncResult)
}
///
- /// A dummy class that simulates a long running Future that implements IAsyncResult methods
+ /// A dummy class that simulates a long running Task that implements IAsyncResult methods
///
public sealed class LongTask : LongTask
{
diff --git a/src/libraries/System.Runtime/tests/System.Threading.Tasks.Tests/Task/TaskContinueWhenAllTests.cs b/src/libraries/System.Runtime/tests/System.Threading.Tasks.Tests/Task/TaskContinueWhenAllTests.cs
index 6a8d9ee5e9a1d9..7f0523765f0596 100644
--- a/src/libraries/System.Runtime/tests/System.Threading.Tasks.Tests/Task/TaskContinueWhenAllTests.cs
+++ b/src/libraries/System.Runtime/tests/System.Threading.Tasks.Tests/Task/TaskContinueWhenAllTests.cs
@@ -22,80 +22,80 @@ public static void TestContinueWhenAll_bare()
int largeSize = 3;
Task[] smallTaskArray = null;
Task[] largeTaskArray = null;
- Task[] smallFutureArray = null;
- Task[] largeFutureArray = null;
+ Task[] smallTaskWithResultArray = null;
+ Task[] largeTaskWithResultArray = null;
Task tSmall;
Task tLarge;
for (int i = 0; i < 2; i++)
{
- bool antecedentsAreFutures = (i == 0);
+ bool antecedentsHaveResult = (i == 0);
for (int j = 0; j < 2; j++)
{
- bool continuationsAreFutures = (j == 0);
+ bool continuationsHaveResult = (j == 0);
for (int x = 0; x < 2; x++)
{
- bool useFutureFactory = (x == 0);
+ bool useResultTaskFactory = (x == 0);
// This would be a nonsensical combination
- if (useFutureFactory && !continuationsAreFutures) continue;
+ if (useResultTaskFactory && !continuationsHaveResult) continue;
Debug.WriteLine(" Testing {0} = {3}.Factory.CWAll({1}, {2})",
- continuationsAreFutures ? "Future" : "Task",
- antecedentsAreFutures ? "Future[]" : "Task[]",
- continuationsAreFutures ? "func" : "action",
- useFutureFactory ? "Task" : "Task");
+ continuationsHaveResult ? "Task" : "Task",
+ antecedentsHaveResult ? "Task[]" : "Task[]",
+ continuationsHaveResult ? "func" : "action",
+ useResultTaskFactory ? "Task" : "Task");
// Set up our antecedents
- if (antecedentsAreFutures)
+ if (antecedentsHaveResult)
{
- makeCWAllFutureArrays(smallSize, largeSize, out smallFutureArray, out largeFutureArray);
- if (continuationsAreFutures)
+ makeCWAllTaskWithResultArrays(smallSize, largeSize, out smallTaskWithResultArray, out largeTaskWithResultArray);
+ if (continuationsHaveResult)
{
- if (useFutureFactory)
+ if (useResultTaskFactory)
{
- // antecedentsAreFutures=true, continuationsAreFutures=true, useFutureFactory = true
- tSmall = Task.Factory.ContinueWhenAll(smallFutureArray, (Task[] finishedArray) => 10);
- tLarge = Task.Factory.ContinueWhenAll(largeFutureArray, (Task[] finishedArray) => 20);
+ // antecedentsHaveResult=true, continuationsHaveResult=true, useResultTaskFactory = true
+ tSmall = Task.Factory.ContinueWhenAll(smallTaskWithResultArray, (Task[] finishedArray) => 10);
+ tLarge = Task.Factory.ContinueWhenAll(largeTaskWithResultArray, (Task[] finishedArray) => 20);
}
- else // useFutureFactory = false (use Task factory)
+ else // useResultTaskFactory = false (use Task factory)
{
- // antecedentsAreFutures=true, continuationsAreFutures=true, useFutureFactory = false
- tSmall = Task.Factory.ContinueWhenAll(smallFutureArray, (Task[] finishedArray) => 10);
- tLarge = Task.Factory.ContinueWhenAll(largeFutureArray, (Task[] finishedArray) => 20);
+ // antecedentsHaveResult=true, continuationsHaveResult=true, useResultTaskFactory = false
+ tSmall = Task.Factory.ContinueWhenAll(smallTaskWithResultArray, (Task[] finishedArray) => 10);
+ tLarge = Task.Factory.ContinueWhenAll(largeTaskWithResultArray, (Task[] finishedArray) => 20);
}
}
- else // continuationsAreFutures = false (continuations are Tasks)
+ else // continuationsHaveResult = false (continuations are Tasks)
{
- // antecedentsAreFutures=true, continuationsAreFutures=false, useFutureFactory = false
- tSmall = Task.Factory.ContinueWhenAll(smallFutureArray, (Task[] finishedArray) => { });
- tLarge = Task.Factory.ContinueWhenAll(largeFutureArray, (Task[] finishedArray) => { });
+ // antecedentsHaveResult=true, continuationsHaveResult=false, useResultTaskFactory = false
+ tSmall = Task.Factory.ContinueWhenAll(smallTaskWithResultArray, (Task[] finishedArray) => { });
+ tLarge = Task.Factory.ContinueWhenAll(largeTaskWithResultArray, (Task[] finishedArray) => { });
}
- // Kick off the smallFutureArray
- startTaskArray(smallFutureArray);
+ // Kick off the smallTaskWithResultArray
+ startTaskArray(smallTaskWithResultArray);
}
- else // antecedentsAreFutures = false (antecedents are Tasks)
+ else // antecedentsHaveResult = false (antecedents are Tasks)
{
makeCWAllTaskArrays(smallSize, largeSize, out smallTaskArray, out largeTaskArray);
- if (continuationsAreFutures)
+ if (continuationsHaveResult)
{
- if (useFutureFactory)
+ if (useResultTaskFactory)
{
- // antecedentsAreFutures=false, continuationsAreFutures=true, useFutureFactory = true
+ // antecedentsHaveResult=false, continuationsHaveResult=true, useResultTaskFactory = true
tSmall = Task.Factory.ContinueWhenAll(smallTaskArray, (Task[] finishedArray) => 10);
tLarge = Task.Factory.ContinueWhenAll(largeTaskArray, (Task[] finishedArray) => 20);
}
- else // useFutureFactory = false (use TaskFactory)
+ else // useResultTaskFactory = false (use TaskFactory)
{
- // antecedentsAreFutures=false, continuationsAreFutures=true, useFutureFactory = false
+ // antecedentsHaveResult=false, continuationsHaveResult=true, useResultTaskFactory = false
tSmall = Task.Factory.ContinueWhenAll(smallTaskArray, (Task[] finishedArray) => 10);
tLarge = Task.Factory.ContinueWhenAll(largeTaskArray, (Task[] finishedArray) => 20);
}
}
- else // continuationsAreFutures = false (continuations are Tasks)
+ else // continuationsHaveResult = false (continuations are Tasks)
{
- // antecedentsAreFutures=false, continuationsAreFutures=false, useFutureFactory = false
+ // antecedentsHaveResult=false, continuationsHaveResult=false, useResultTaskFactory = false
tSmall = Task.Factory.ContinueWhenAll(smallTaskArray, (Task[] finishedArray) => { });
tLarge = Task.Factory.ContinueWhenAll(largeTaskArray, (Task[] finishedArray) => { });
}
@@ -109,7 +109,7 @@ public static void TestContinueWhenAll_bare()
Exception ex = null;
try
{
- if (continuationsAreFutures) result = ((Task)tSmall).Result;
+ if (continuationsHaveResult) result = ((Task)tSmall).Result;
else tSmall.Wait();
}
catch (Exception e)
@@ -118,19 +118,19 @@ public static void TestContinueWhenAll_bare()
}
Assert.Null(ex); // , "Did not expect exception from tSmall.Wait()")
- Assert.True((result == 10) || (!continuationsAreFutures), "Expected valid result from tSmall");
+ Assert.True((result == 10) || (!continuationsHaveResult), "Expected valid result from tSmall");
Assert.False(tLarge.IsCompleted, "tLarge completed before its time");
//
// Now start the large array
//
- if (antecedentsAreFutures) startTaskArray(largeFutureArray);
+ if (antecedentsHaveResult) startTaskArray(largeTaskWithResultArray);
else startTaskArray(largeTaskArray);
result = 0;
try
{
- if (continuationsAreFutures) result = ((Task)tLarge).Result;
+ if (continuationsHaveResult) result = ((Task)tLarge).Result;
else tLarge.Wait();
}
catch (Exception e)
@@ -139,10 +139,10 @@ public static void TestContinueWhenAll_bare()
}
Assert.Null(ex); // , "Did not expect exception from tLarge.Wait()")
- Assert.True((result == 20) || (!continuationsAreFutures), "Expected valid result from tLarge");
- } // end x-loop (FutureFactory or TaskFactory)
- } // end j-loop (continuations are futures or tasks)
- }// end i-loop (antecedents are futures or tasks)
+ Assert.True((result == 20) || (!continuationsHaveResult), "Expected valid result from tLarge");
+ } // end x-loop (ResultTaskFactory or TaskFactory)
+ } // end j-loop (continuations are Task or Task)
+ }// end i-loop (antecedents are Task or Task)
}
// Test functionality of ContinueWhenAll overloads w/ CancellationToken
@@ -153,16 +153,16 @@ public static void TestContinueWhenAll_CancellationToken()
int largeSize = 3;
Task[] smallTaskArray = null;
Task[] largeTaskArray = null;
- Task[] smallFutureArray = null;
- Task[] largeFutureArray = null;
+ Task[] smallTaskWithResultArray = null;
+ Task[] largeTaskWithResultArray = null;
Task tSmall;
Task tLarge;
for (int i = 0; i < 2; i++)
{
- bool antecedentsAreFutures = (i == 0);
+ bool antecedentsHaveResult = (i == 0);
for (int j = 0; j < 2; j++)
{
- bool continuationsAreFutures = (j == 0);
+ bool continuationsHaveResult = (j == 0);
for (int k = 0; k < 2; k++)
{
bool preCanceledToken = (k == 0);
@@ -172,68 +172,68 @@ public static void TestContinueWhenAll_CancellationToken()
for (int x = 0; x < 2; x++)
{
- bool useFutureFactory = (x == 0);
+ bool useResultTaskFactory = (x == 0);
// This would be a nonsensical combination
- if (useFutureFactory && !continuationsAreFutures) continue;
+ if (useResultTaskFactory && !continuationsHaveResult) continue;
Debug.WriteLine(" Testing {0} = {4}.Factory.CWAll({1}, {3}, ct({2}))",
- continuationsAreFutures ? "Future" : "Task",
- antecedentsAreFutures ? "Future[]" : "Task[]",
+ continuationsHaveResult ? "Task" : "Task",
+ antecedentsHaveResult ? "Task[]" : "Task[]",
preCanceledToken ? "signaled" : "unsignaled",
- continuationsAreFutures ? "func" : "action",
- useFutureFactory ? "Task" : "Task");
+ continuationsHaveResult ? "func" : "action",
+ useResultTaskFactory ? "Task" : "Task");
// Set up our antecedents
- if (antecedentsAreFutures)
+ if (antecedentsHaveResult)
{
- makeCWAllFutureArrays(smallSize, largeSize, out smallFutureArray, out largeFutureArray);
- if (continuationsAreFutures)
+ makeCWAllTaskWithResultArrays(smallSize, largeSize, out smallTaskWithResultArray, out largeTaskWithResultArray);
+ if (continuationsHaveResult)
{
- if (useFutureFactory)
+ if (useResultTaskFactory)
{
- // antecedentsAreFutures=true, continuationsAreFutures=true, useFutureFactory = true
- tSmall = Task.Factory.ContinueWhenAll(smallFutureArray, (Task[] finishedArray) => 10, ct);
- tLarge = Task.Factory.ContinueWhenAll(largeFutureArray, (Task[] finishedArray) => 20, ct);
+ // antecedentsHaveResult=true, continuationsHaveResult=true, useResultTaskFactory = true
+ tSmall = Task.Factory.ContinueWhenAll(smallTaskWithResultArray, (Task[] finishedArray) => 10, ct);
+ tLarge = Task.Factory.ContinueWhenAll(largeTaskWithResultArray, (Task[] finishedArray) => 20, ct);
}
- else // useFutureFactory = false (use Task factory)
+ else // useResultTaskFactory = false (use Task factory)
{
- // antecedentsAreFutures=true, continuationsAreFutures=true, useFutureFactory = false
- tSmall = Task.Factory.ContinueWhenAll(smallFutureArray, (Task[] finishedArray) => 10, ct);
- tLarge = Task.Factory.ContinueWhenAll(largeFutureArray, (Task[] finishedArray) => 20, ct);
+ // antecedentsHaveResult=true, continuationsHaveResult=true, useResultTaskFactory = false
+ tSmall = Task.Factory.ContinueWhenAll(smallTaskWithResultArray, (Task[] finishedArray) => 10, ct);
+ tLarge = Task.Factory.ContinueWhenAll(largeTaskWithResultArray, (Task[] finishedArray) => 20, ct);
}
}
- else // continuationsAreFutures = false (continuations are Tasks)
+ else // continuationsHaveResult = false (continuations are Tasks)
{
- // antecedentsAreFutures=true, continuationsAreFutures=false, useFutureFactory = false
- tSmall = Task.Factory.ContinueWhenAll(smallFutureArray, (Task[] finishedArray) => { }, ct);
- tLarge = Task.Factory.ContinueWhenAll(largeFutureArray, (Task[] finishedArray) => { }, ct);
+ // antecedentsHaveResult=true, continuationsHaveResult=false, useResultTaskFactory = false
+ tSmall = Task.Factory.ContinueWhenAll(smallTaskWithResultArray, (Task[] finishedArray) => { }, ct);
+ tLarge = Task.Factory.ContinueWhenAll(largeTaskWithResultArray, (Task[] finishedArray) => { }, ct);
}
- // Kick off the smallFutureArray
- startTaskArray(smallFutureArray);
+ // Kick off the smallTaskWithResultArray
+ startTaskArray(smallTaskWithResultArray);
}
- else // antecedentsAreFutures = false (antecedents are Tasks)
+ else // antecedentsHaveResult = false (antecedents are Tasks)
{
makeCWAllTaskArrays(smallSize, largeSize, out smallTaskArray, out largeTaskArray);
- if (continuationsAreFutures)
+ if (continuationsHaveResult)
{
- if (useFutureFactory)
+ if (useResultTaskFactory)
{
- // antecedentsAreFutures=false, continuationsAreFutures=true, useFutureFactory = true
+ // antecedentsHaveResult=false, continuationsHaveResult=true, useResultTaskFactory = true
tSmall = Task.Factory.ContinueWhenAll(smallTaskArray, (Task[] finishedArray) => 10, ct);
tLarge = Task.Factory.ContinueWhenAll(largeTaskArray, (Task[] finishedArray) => 20, ct);
}
- else // useFutureFactory = false (use TaskFactory)
+ else // useResultTaskFactory = false (use TaskFactory)
{
- // antecedentsAreFutures=false, continuationsAreFutures=true, useFutureFactory = false
+ // antecedentsHaveResult=false, continuationsHaveResult=true, useResultTaskFactory = false
tSmall = Task.Factory.ContinueWhenAll(smallTaskArray, (Task[] finishedArray) => 10, ct);
tLarge = Task.Factory.ContinueWhenAll(largeTaskArray, (Task[] finishedArray) => 20, ct);
}
}
- else // continuationsAreFutures = false (continuations are Tasks)
+ else // continuationsHaveResult = false (continuations are Tasks)
{
- // antecedentsAreFutures=false, continuationsAreFutures=false, useFutureFactory = false
+ // antecedentsHaveResult=false, continuationsHaveResult=false, useResultTaskFactory = false
tSmall = Task.Factory.ContinueWhenAll(smallTaskArray, (Task[] finishedArray) => { }, ct);
tLarge = Task.Factory.ContinueWhenAll(largeTaskArray, (Task[] finishedArray) => { }, ct);
}
@@ -247,7 +247,7 @@ public static void TestContinueWhenAll_CancellationToken()
Exception ex = null;
try
{
- if (continuationsAreFutures) result = ((Task)tSmall).Result;
+ if (continuationsHaveResult) result = ((Task)tSmall).Result;
else tSmall.Wait();
}
catch (Exception e)
@@ -270,20 +270,20 @@ public static void TestContinueWhenAll_CancellationToken()
}
else // !preCanceledToken
{
- Assert.True((result == 10) || (!continuationsAreFutures), "Expected valid result from tSmall");
+ Assert.True((result == 10) || (!continuationsHaveResult), "Expected valid result from tSmall");
Assert.False(tLarge.IsCompleted, "tLarge completed before its time");
}
//
// Now start the large array
//
- if (antecedentsAreFutures) startTaskArray(largeFutureArray);
+ if (antecedentsHaveResult) startTaskArray(largeTaskWithResultArray);
else startTaskArray(largeTaskArray);
result = 0;
try
{
- if (continuationsAreFutures) result = ((Task)tLarge).Result;
+ if (continuationsHaveResult) result = ((Task)tLarge).Result;
else tLarge.Wait();
}
catch (Exception e)
@@ -306,12 +306,12 @@ public static void TestContinueWhenAll_CancellationToken()
}
else // !preCanceledToken
{
- Assert.True((result == 20) || (!continuationsAreFutures), "Expected valid result from tLarge");
+ Assert.True((result == 20) || (!continuationsHaveResult), "Expected valid result from tLarge");
}
- } // end x-loop (FutureFactory or TaskFactory)
+ } // end x-loop (ResultTaskFactory or TaskFactory)
} // end k-loop (preCanceled or not)
- } // end j-loop (continuations are futures or tasks)
- }// end i-loop (antecedents are futures or tasks)
+ } // end j-loop (continuations are Task or Task)
+ }// end i-loop (antecedents are Task or Task)
}
// Test functionality of ContinueWhenAll overloads w/ TaskContinuationOptions
@@ -322,16 +322,16 @@ public static void TestContinueWhenAll_TaskContinuationOptions()
int largeSize = 3;
Task[] smallTaskArray = null;
Task[] largeTaskArray = null;
- Task[] smallFutureArray = null;
- Task[] largeFutureArray = null;
+ Task[] smallTaskWithResultArray = null;
+ Task[] largeTaskWithResultArray = null;
Task tSmall;
Task tLarge;
for (int i = 0; i < 2; i++)
{
- bool antecedentsAreFutures = (i == 0);
+ bool antecedentsHaveResult = (i == 0);
for (int j = 0; j < 2; j++)
{
- bool continuationsAreFutures = (j == 0);
+ bool continuationsHaveResult = (j == 0);
for (int k = 0; k < 2; k++)
{
bool longRunning = (k == 0);
@@ -339,68 +339,68 @@ public static void TestContinueWhenAll_TaskContinuationOptions()
for (int x = 0; x < 2; x++)
{
- bool useFutureFactory = (x == 0);
+ bool useResultTaskFactory = (x == 0);
// This would be a nonsensical combination
- if (useFutureFactory && !continuationsAreFutures) continue;
+ if (useResultTaskFactory && !continuationsHaveResult) continue;
Debug.WriteLine(" Testing {0} = {3}.Factory.CWAll({1}, {2}, {4})",
- continuationsAreFutures ? "Future" : "Task",
- antecedentsAreFutures ? "Future[]" : "Task[]",
- continuationsAreFutures ? "func" : "action",
- useFutureFactory ? "Task" : "Task",
+ continuationsHaveResult ? "Task" : "Task",
+ antecedentsHaveResult ? "Task[]" : "Task[]",
+ continuationsHaveResult ? "func" : "action",
+ useResultTaskFactory ? "Task" : "Task",
tco);
// Set up our antecedents
- if (antecedentsAreFutures)
+ if (antecedentsHaveResult)
{
- makeCWAllFutureArrays(smallSize, largeSize, out smallFutureArray, out largeFutureArray);
- if (continuationsAreFutures)
+ makeCWAllTaskWithResultArrays(smallSize, largeSize, out smallTaskWithResultArray, out largeTaskWithResultArray);
+ if (continuationsHaveResult)
{
- if (useFutureFactory)
+ if (useResultTaskFactory)
{
- // antecedentsAreFutures=true, continuationsAreFutures=true, useFutureFactory = true
- tSmall = Task.Factory.ContinueWhenAll(smallFutureArray, (Task[] finishedArray) => 10, tco);
- tLarge = Task.Factory.ContinueWhenAll(largeFutureArray, (Task[] finishedArray) => 20, tco);
+ // antecedentsHaveResult=true, continuationsHaveResult=true, useResultTaskFactory = true
+ tSmall = Task.Factory.ContinueWhenAll(smallTaskWithResultArray, (Task[] finishedArray) => 10, tco);
+ tLarge = Task.Factory.ContinueWhenAll(largeTaskWithResultArray, (Task[] finishedArray) => 20, tco);
}
- else // useFutureFactory = false (use Task factory)
+ else // useResultTaskFactory = false (use Task factory)
{
- // antecedentsAreFutures=true, continuationsAreFutures=true, useFutureFactory = false
- tSmall = Task.Factory.ContinueWhenAll(smallFutureArray, (Task[] finishedArray) => 10, tco);
- tLarge = Task.Factory.ContinueWhenAll(largeFutureArray, (Task[] finishedArray) => 20, tco);
+ // antecedentsHaveResult=true, continuationsHaveResult=true, useResultTaskFactory = false
+ tSmall = Task.Factory.ContinueWhenAll(smallTaskWithResultArray, (Task[] finishedArray) => 10, tco);
+ tLarge = Task.Factory.ContinueWhenAll(largeTaskWithResultArray, (Task[] finishedArray) => 20, tco);
}
}
- else // continuationsAreFutures = false (continuations are Tasks)
+ else // continuationsHaveResult = false (continuations are Tasks)
{
- // antecedentsAreFutures=true, continuationsAreFutures=false, useFutureFactory = false
- tSmall = Task.Factory.ContinueWhenAll(smallFutureArray, (Task[] finishedArray) => { }, tco);
- tLarge = Task.Factory.ContinueWhenAll(largeFutureArray, (Task[] finishedArray) => { }, tco);
+ // antecedentsHaveResult=true, continuationsHaveResult=false, useResultTaskFactory = false
+ tSmall = Task.Factory.ContinueWhenAll(smallTaskWithResultArray, (Task[] finishedArray) => { }, tco);
+ tLarge = Task.Factory.ContinueWhenAll(largeTaskWithResultArray, (Task[] finishedArray) => { }, tco);
}
- // Kick off the smallFutureArray
- startTaskArray(smallFutureArray);
+ // Kick off the smallTaskWithResultArray
+ startTaskArray(smallTaskWithResultArray);
}
- else // antecedentsAreFutures = false (antecedents are Tasks)
+ else // antecedentsHaveResult = false (antecedents are Tasks)
{
makeCWAllTaskArrays(smallSize, largeSize, out smallTaskArray, out largeTaskArray);
- if (continuationsAreFutures)
+ if (continuationsHaveResult)
{
- if (useFutureFactory)
+ if (useResultTaskFactory)
{
- // antecedentsAreFutures=false, continuationsAreFutures=true, useFutureFactory = true
+ // antecedentsHaveResult=false, continuationsHaveResult=true, useResultTaskFactory = true
tSmall = Task.Factory.ContinueWhenAll(smallTaskArray, (Task[] finishedArray) => 10, tco);
tLarge = Task.Factory.ContinueWhenAll(largeTaskArray, (Task[] finishedArray) => 20, tco);
}
- else // useFutureFactory = false (use TaskFactory)
+ else // useResultTaskFactory = false (use TaskFactory)
{
- // antecedentsAreFutures=false, continuationsAreFutures=true, useFutureFactory = false
+ // antecedentsHaveResult=false, continuationsHaveResult=true, useResultTaskFactory = false
tSmall = Task.Factory.ContinueWhenAll(smallTaskArray, (Task[] finishedArray) => 10, tco);
tLarge = Task.Factory.ContinueWhenAll(largeTaskArray, (Task[] finishedArray) => 20, tco);
}
}
- else // continuationsAreFutures = false (continuations are Tasks)
+ else // continuationsHaveResult = false (continuations are Tasks)
{
- // antecedentsAreFutures=false, continuationsAreFutures=false, useFutureFactory = false
+ // antecedentsHaveResult=false, continuationsHaveResult=false, useResultTaskFactory = false
tSmall = Task.Factory.ContinueWhenAll(smallTaskArray, (Task[] finishedArray) => { }, tco);
tLarge = Task.Factory.ContinueWhenAll(largeTaskArray, (Task[] finishedArray) => { }, tco);
}
@@ -414,7 +414,7 @@ public static void TestContinueWhenAll_TaskContinuationOptions()
Exception ex = null;
try
{
- if (continuationsAreFutures) result = ((Task)tSmall).Result;
+ if (continuationsHaveResult) result = ((Task)tSmall).Result;
else tSmall.Wait();
}
catch (Exception e)
@@ -423,7 +423,7 @@ public static void TestContinueWhenAll_TaskContinuationOptions()
}
Assert.Null(ex); // , "Did not expect exception from tSmall.Wait()")
- Assert.True((result == 10) || (!continuationsAreFutures), "Expected valid result from tSmall");
+ Assert.True((result == 10) || (!continuationsHaveResult), "Expected valid result from tSmall");
Assert.False(tLarge.IsCompleted, "tLarge completed before its time");
Assert.Equal((tSmall.CreationOptions & TaskCreationOptions.LongRunning) != 0, longRunning);
Assert.True((tSmall.CreationOptions == TaskCreationOptions.None) || longRunning, "tSmall CreationOptions should be None unless longRunning is true");
@@ -431,13 +431,13 @@ public static void TestContinueWhenAll_TaskContinuationOptions()
//
// Now start the large array
//
- if (antecedentsAreFutures) startTaskArray(largeFutureArray);
+ if (antecedentsHaveResult) startTaskArray(largeTaskWithResultArray);
else startTaskArray(largeTaskArray);
result = 0;
try
{
- if (continuationsAreFutures) result = ((Task)tLarge).Result;
+ if (continuationsHaveResult) result = ((Task)tLarge).Result;
else tLarge.Wait();
}
catch (Exception e)
@@ -446,13 +446,13 @@ public static void TestContinueWhenAll_TaskContinuationOptions()
}
Assert.Null(ex); // , "Did not expect exception from tLarge.Wait()")
- Assert.True((result == 20) || (!continuationsAreFutures), "Expected valid result from tLarge");
+ Assert.True((result == 20) || (!continuationsHaveResult), "Expected valid result from tLarge");
Assert.Equal((tLarge.CreationOptions & TaskCreationOptions.LongRunning) != 0, longRunning);
Assert.True((tLarge.CreationOptions == TaskCreationOptions.None) || longRunning, "tLarge CreationOptions should be None unless longRunning is true");
- } // end x-loop (FutureFactory or TaskFactory)
+ } // end x-loop (ResultTaskFactory or TaskFactory)
} // end k-loop (TaskContinuationOptions are LongRunning or None)
- } // end j-loop (continuations are futures or tasks)
- }// end i-loop (antecedents are futures or tasks)
+ } // end j-loop (continuations are Task or Task)
+ }// end i-loop (antecedents are Task or Task)
}
// Test functionality of "full up" ContinueWhenAll overloads
@@ -463,16 +463,16 @@ public static void TestCWAll_CancellationToken_TaskContinuation_TaskScheduler()
int largeSize = 3;
Task[] smallTaskArray = null;
Task[] largeTaskArray = null;
- Task[] smallFutureArray = null;
- Task[] largeFutureArray = null;
+ Task[] smallTaskWithResultArray = null;
+ Task[] largeTaskWithResultArray = null;
Task tSmall;
Task tLarge;
for (int i = 0; i < 2; i++)
{
- bool antecedentsAreFutures = (i == 0);
+ bool antecedentsHaveResult = (i == 0);
for (int j = 0; j < 2; j++)
{
- bool continuationsAreFutures = (j == 0);
+ bool continuationsHaveResult = (j == 0);
for (int k = 0; k < 2; k++)
{
bool preCanceledToken = (k == 0);
@@ -482,71 +482,71 @@ public static void TestCWAll_CancellationToken_TaskContinuation_TaskScheduler()
for (int x = 0; x < 2; x++)
{
- bool useFutureFactory = (x == 0);
+ bool useResultTaskFactory = (x == 0);
// This would be a nonsensical combination
- if (useFutureFactory && !continuationsAreFutures) continue;
+ if (useResultTaskFactory && !continuationsHaveResult) continue;
TaskContinuationOptions tco = TaskContinuationOptions.None; // for now
TaskScheduler ts = TaskScheduler.Default;
Debug.WriteLine(" Testing {0} = {4}.Factory.CWAll({1}, {3}, ct({2}), tco.None, ts.Default)",
- continuationsAreFutures ? "Future" : "Task",
- antecedentsAreFutures ? "Future[]" : "Task[]",
+ continuationsHaveResult ? "Task" : "Task",
+ antecedentsHaveResult ? "Task[]" : "Task[]",
preCanceledToken ? "signaled" : "unsignaled",
- continuationsAreFutures ? "func" : "action",
- useFutureFactory ? "Task" : "Task");
+ continuationsHaveResult ? "func" : "action",
+ useResultTaskFactory ? "Task" : "Task");
// Set up our antecedents
- if (antecedentsAreFutures)
+ if (antecedentsHaveResult)
{
- makeCWAllFutureArrays(smallSize, largeSize, out smallFutureArray, out largeFutureArray);
- if (continuationsAreFutures)
+ makeCWAllTaskWithResultArrays(smallSize, largeSize, out smallTaskWithResultArray, out largeTaskWithResultArray);
+ if (continuationsHaveResult)
{
- if (useFutureFactory)
+ if (useResultTaskFactory)
{
- // antecedentsAreFutures=true, continuationsAreFutures=true, useFutureFactory = true
- tSmall = Task.Factory.ContinueWhenAll(smallFutureArray, (Task[] finishedArray) => 10, ct, tco, ts);
- tLarge = Task.Factory.ContinueWhenAll(largeFutureArray, (Task[] finishedArray) => 20, ct, tco, ts);
+ // antecedentsHaveResult=true, continuationsHaveResult=true, useResultTaskFactory = true
+ tSmall = Task.Factory.ContinueWhenAll(smallTaskWithResultArray, (Task[] finishedArray) => 10, ct, tco, ts);
+ tLarge = Task.Factory.ContinueWhenAll(largeTaskWithResultArray, (Task[] finishedArray) => 20, ct, tco, ts);
}
- else // useFutureFactory = false (use Task factory)
+ else // useResultTaskFactory = false (use Task factory)
{
- // antecedentsAreFutures=true, continuationsAreFutures=true, useFutureFactory = false
- tSmall = Task.Factory.ContinueWhenAll(smallFutureArray, (Task[] finishedArray) => 10, ct, tco, ts);
- tLarge = Task.Factory.ContinueWhenAll(largeFutureArray, (Task[] finishedArray) => 20, ct, tco, ts);
+ // antecedentsHaveResult=true, continuationsHaveResult=true, useResultTaskFactory = false
+ tSmall = Task.Factory.ContinueWhenAll(smallTaskWithResultArray, (Task[] finishedArray) => 10, ct, tco, ts);
+ tLarge = Task.Factory.ContinueWhenAll(largeTaskWithResultArray, (Task[] finishedArray) => 20, ct, tco, ts);
}
}
- else // continuationsAreFutures = false (continuations are Tasks)
+ else // continuationsHaveResult = false (continuations are Tasks)
{
- // antecedentsAreFutures=true, continuationsAreFutures=false, useFutureFactory = false
- tSmall = Task.Factory.ContinueWhenAll(smallFutureArray, (Task[] finishedArray) => { }, ct, tco, ts);
- tLarge = Task.Factory.ContinueWhenAll(largeFutureArray, (Task[] finishedArray) => { }, ct, tco, ts);
+ // antecedentsHaveResult=true, continuationsHaveResult=false, useResultTaskFactory = false
+ tSmall = Task.Factory.ContinueWhenAll(smallTaskWithResultArray, (Task[] finishedArray) => { }, ct, tco, ts);
+ tLarge = Task.Factory.ContinueWhenAll(largeTaskWithResultArray, (Task[] finishedArray) => { }, ct, tco, ts);
}
- // Kick off the smallFutureArray
- startTaskArray(smallFutureArray);
+ // Kick off the smallTaskWithResultArray
+ startTaskArray(smallTaskWithResultArray);
}
- else // antecedentsAreFutures = false (antecedents are Tasks)
+ else // antecedentsHaveResult = false (antecedents are Tasks)
{
makeCWAllTaskArrays(smallSize, largeSize, out smallTaskArray, out largeTaskArray);
- if (continuationsAreFutures)
+ if (continuationsHaveResult)
{
- if (useFutureFactory)
+ if (useResultTaskFactory)
{
- // antecedentsAreFutures=false, continuationsAreFutures=true, useFutureFactory = true
+ // antecedentsHaveResult=false, continuationsHaveResult=true, useResultTaskFactory = true
tSmall = Task.Factory.ContinueWhenAll(smallTaskArray, (Task[] finishedArray) => 10, ct, tco, ts);
tLarge = Task.Factory.ContinueWhenAll(largeTaskArray, (Task[] finishedArray) => 20, ct, tco, ts);
}
- else // useFutureFactory = false (use TaskFactory)
+ else // useResultTaskFactory = false (use TaskFactory)
{
- // antecedentsAreFutures=false, continuationsAreFutures=true, useFutureFactory = false
+ // antecedentsHaveResult=false, continuationsHaveResult=true, useResultTaskFactory = false
tSmall = Task.Factory.ContinueWhenAll(smallTaskArray, (Task[] finishedArray) => 10, ct, tco, ts);
tLarge = Task.Factory.ContinueWhenAll(largeTaskArray, (Task[] finishedArray) => 20, ct, tco, ts);
}
}
- else // continuationsAreFutures = false (continuations are Tasks)
+ else // continuationsHaveResult = false (continuations are Tasks)
{
- // antecedentsAreFutures=false, continuationsAreFutures=false, useFutureFactory = false
+ // antecedentsHaveResult=false, continuationsHaveResult=false, useResultTaskFactory = false
tSmall = Task.Factory.ContinueWhenAll(smallTaskArray, (Task[] finishedArray) => { }, ct, tco, ts);
tLarge = Task.Factory.ContinueWhenAll(largeTaskArray, (Task[] finishedArray) => { }, ct, tco, ts);
}
@@ -560,7 +560,7 @@ public static void TestCWAll_CancellationToken_TaskContinuation_TaskScheduler()
Exception ex = null;
try
{
- if (continuationsAreFutures) result = ((Task)tSmall).Result;
+ if (continuationsHaveResult) result = ((Task)tSmall).Result;
else tSmall.Wait();
}
catch (Exception e)
@@ -583,20 +583,20 @@ public static void TestCWAll_CancellationToken_TaskContinuation_TaskScheduler()
}
else // !preCanceledToken
{
- Assert.True((result == 10) || (!continuationsAreFutures), "Expected valid result from tSmall");
+ Assert.True((result == 10) || (!continuationsHaveResult), "Expected valid result from tSmall");
Assert.False(tLarge.IsCompleted, "tLarge completed before its time");
}
//
// Now start the large array
//
- if (antecedentsAreFutures) startTaskArray(largeFutureArray);
+ if (antecedentsHaveResult) startTaskArray(largeTaskWithResultArray);
else startTaskArray(largeTaskArray);
result = 0;
try
{
- if (continuationsAreFutures) result = ((Task)tLarge).Result;
+ if (continuationsHaveResult) result = ((Task)tLarge).Result;
else tLarge.Wait();
}
catch (Exception e)
@@ -619,12 +619,12 @@ public static void TestCWAll_CancellationToken_TaskContinuation_TaskScheduler()
}
else // !preCanceledToken
{
- Assert.True((result == 20) || (!continuationsAreFutures), "Expected valid result from tLarge");
+ Assert.True((result == 20) || (!continuationsHaveResult), "Expected valid result from tLarge");
}
- } // end x-loop (FutureFactory or TaskFactory)
+ } // end x-loop (ResultTaskFactory or TaskFactory)
} // end k-loop (preCanceled or not)
- } // end j-loop (continuations are futures or tasks)
- }// end i-loop (antecedents are futures or tasks)
+ } // end j-loop (continuations are Task or Task)
+ }// end i-loop (antecedents are Task or Task)
}
[ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsThreadingSupported))]
@@ -634,8 +634,8 @@ public static void RunContinueWhenAllTests_Exceptions()
int largeSize = 3;
Task[] largeTaskArray = null;
Task[] smallTaskArray;
- Task[] largeFutureArray = null;
- Task[] smallFutureArray;
+ Task[] largeTaskWithResultArray = null;
+ Task[] smallTaskWithResultArray;
// The remainder of this method will verify exceptional conditions
@@ -715,7 +715,7 @@ public static void RunContinueWhenAllTests_Exceptions()
//
- // Test exceptions from continuing from Task[] => Task using FutureFactory
+ // Test exceptions from continuing from Task[] => Task using ResultTaskFactory
//
{
makeCWAllTaskArrays(smallSize, largeSize, out smallTaskArray, out largeTaskArray);
@@ -751,32 +751,32 @@ public static void RunContinueWhenAllTests_Exceptions()
// Test exceptions from continuing from Task[] => Task
//
{
- makeCWAllFutureArrays(smallSize, largeSize, out smallFutureArray, out largeFutureArray);
+ makeCWAllTaskWithResultArrays(smallSize, largeSize, out smallTaskWithResultArray, out largeTaskWithResultArray);
Assert.Throws(
- () => { Task.Factory.ContinueWhenAll(smallFutureArray, finishedArray => { }, CancellationToken.None, TaskContinuationOptions.None, (TaskScheduler)null); });
+ () => { Task.Factory.ContinueWhenAll(smallTaskWithResultArray, finishedArray => { }, CancellationToken.None, TaskContinuationOptions.None, (TaskScheduler)null); });
Assert.Throws(
- () => { Task.Factory.ContinueWhenAll(smallFutureArray, finishedArray => { }, TaskContinuationOptions.NotOnFaulted); });
+ () => { Task.Factory.ContinueWhenAll(smallTaskWithResultArray, finishedArray => { }, TaskContinuationOptions.NotOnFaulted); });
Assert.Throws(
- () => { Task.Factory.ContinueWhenAll(smallFutureArray, (Action[]>)null); });
+ () => { Task.Factory.ContinueWhenAll(smallTaskWithResultArray, (Action[]>)null); });
Assert.Throws(
- () => { Task.Factory.ContinueWhenAll(smallFutureArray, (Action[]>)null, CancellationToken.None); });
+ () => { Task.Factory.ContinueWhenAll(smallTaskWithResultArray, (Action[]>)null, CancellationToken.None); });
Assert.Throws(
- () => { Task.Factory.ContinueWhenAll(smallFutureArray, (Action[]>)null, TaskContinuationOptions.None); });
+ () => { Task.Factory.ContinueWhenAll(smallTaskWithResultArray, (Action[]>)null, TaskContinuationOptions.None); });
Assert.Throws(
- () => { Task.Factory.ContinueWhenAll(smallFutureArray, (Action[]>)null, CancellationToken.None, TaskContinuationOptions.None, TaskScheduler.Default); });
+ () => { Task.Factory.ContinueWhenAll(smallTaskWithResultArray, (Action[]>)null, CancellationToken.None, TaskContinuationOptions.None, TaskScheduler.Default); });
Assert.Throws(
() => { Task.Factory.ContinueWhenAll((Task[])null, finishedArray => { }); });
- smallFutureArray[0] = null;
+ smallTaskWithResultArray[0] = null;
- AssertExtensions.Throws("tasks", () => Task.Factory.ContinueWhenAll(smallFutureArray, finishedArray => { }));
+ AssertExtensions.Throws("tasks", () => Task.Factory.ContinueWhenAll(smallTaskWithResultArray, finishedArray => { }));
AssertExtensions.Throws("tasks", () => Task.Factory.ContinueWhenAll(new Task[0], finishedArray => { }));
}
@@ -784,66 +784,66 @@ public static void RunContinueWhenAllTests_Exceptions()
// Test exceptions from continuing from Task[] => Task using TaskFactory
//
{
- makeCWAllFutureArrays(smallSize, largeSize, out smallFutureArray, out largeFutureArray);
+ makeCWAllTaskWithResultArrays(smallSize, largeSize, out smallTaskWithResultArray, out largeTaskWithResultArray);
Assert.Throws(
- () => { Task.Factory.ContinueWhenAll(smallFutureArray, finishedArray => 10, CancellationToken.None, TaskContinuationOptions.None, (TaskScheduler)null); });
+ () => { Task.Factory.ContinueWhenAll(smallTaskWithResultArray, finishedArray => 10, CancellationToken.None, TaskContinuationOptions.None, (TaskScheduler)null); });
Assert.Throws(
- () => { Task.Factory.ContinueWhenAll