2010-07-07 Jérémie Laval <jeremie.laval@gmail.com>
authorJérémie Laval <jeremie.laval@gmail.com>
Wed, 7 Jul 2010 13:14:27 +0000 (13:14 -0000)
committerJérémie Laval <jeremie.laval@gmail.com>
Wed, 7 Jul 2010 13:14:27 +0000 (13:14 -0000)
In class/corlib/System.Threading.Tasks/:
   * Parallel.cs: Fix Parallel.Invoke to use all data supplied in
   ParallelOptions
   * ParallelOptions.cs: Use CancellationToken.None for initialization

svn path=/trunk/mcs/; revision=160004

mcs/class/corlib/System.Threading.Tasks/ChangeLog
mcs/class/corlib/System.Threading.Tasks/Parallel.cs
mcs/class/corlib/System.Threading.Tasks/ParallelOptions.cs

index 97e61717007e81308cf7a74612f8f6dd2c182d8b..b8341ca499a7c51e5d2f60e4ebdfba29bf76f3c1 100644 (file)
@@ -1,3 +1,9 @@
+2010-07-07  Jérémie Laval  <jeremie.laval@gmail.com>
+
+       * Parallel.cs: Fix Parallel.Invoke to use all data supplied in
+       ParallelOptions
+       * ParallelOptions.cs: Use CancellationToken.None for initialization
+
 2010-04-15  Jérémie Laval  <jeremie.laval@gmail.com>
 
        * Future.cs:
index 0a989e8ba1c0a0f830542d08e00f01cf82b44fca..4d1bc6a016265e235eb1c134a71b1d2b16b7c54c 100644 (file)
@@ -453,7 +453,7 @@ namespace System.Threading.Tasks
                        if (actions == null)
                                throw new ArgumentNullException ("actions");
                        
-                       Invoke (actions, (Action a) => Task.Factory.StartNew (a, CancellationToken.None, TaskCreationOptions.None, parallelOptions.TaskScheduler));
+                       Invoke (actions, (Action a) => Task.Factory.StartNew (a, parallelOptions.CancellationToken, TaskCreationOptions.None, parallelOptions.TaskScheduler));
                }
                
                static void Invoke (Action[] actions, Func<Action, Task> taskCreator)
index 6c3c5a0a394e1622b87fa804552e0ffaf686489b..5eb01591ceb580974c073f4919862f2753bcac01 100644 (file)
@@ -33,14 +33,12 @@ namespace System.Threading.Tasks
        
        public class ParallelOptions
        {
-               static CancellationTokenSource src = new CancellationTokenSource ();
-               
                internal static readonly ParallelOptions Default = new ParallelOptions ();
                
                public ParallelOptions()
                {
                        this.MaxDegreeOfParallelism = -1;
-                       this.CancellationToken = src.Token;
+                       this.CancellationToken = CancellationToken.None;
                        this.TaskScheduler = TaskScheduler.Current;
                }