C#用Parallel.Invoke 方法尽可能并行执行提供的每个操作

目录

一、重载

二、Invoke(Action[])

1.定义

2.示例

三、Invoke(ParallelOptions, Action[])

1.定义 

2.示例


        尽可能并行执行提供的每个操作。使用Parallel.Invoke 方法。

一、重载

Invoke(Action[]) 尽可能并行执行提供的每个操作。
Invoke(ParallelOptions, Action[]) 执行所提供的每个操作,而且尽可能并行运行,除非用户取消了操作。

二、Invoke(Action[])

        尽可能并行执行提供的每个操作。 

1.定义

public static void Invoke (params Action[] actions);

参数
actions    Action[]
要执行的 Action 数组。

例外
ArgumentNullException
actions 参数为 null。

AggregateException
当 actions 数组中的任何操作引发异常时引发的异常。

ArgumentException
actions数组包含 null 个元素。

2.示例

        Invoke方法经常与其他方法、匿名委托和 lambda 表达式配合使用,实现并行方法的线程同步。

三、Invoke(ParallelOptions, Action[])

        执行所提供的每个操作,而且尽可能并行运行,除非用户取消了操作。

1.定义 

public static void Invoke (System.Threading.Tasks.ParallelOptions parallelOptions, params Action[] actions);

参数
parallelOptions    ParallelOptions
一个对象,用于配置此操作的行为。

actions    Action[]
要执行的操作数组。

例外
OperationCanceledException
CancellationToken 处于 parallelOptions 设置。

ArgumentNullException
actions 参数为 null。
或 - parallelOptions 参数为 null。
AggregateException
当 actions 数组中的任何操作引发异常时引发的异常。

ArgumentException
actions数组包含 null 个元素。

ObjectDisposedException
在 parallelOptions 中与 CancellationTokenSource 关联的 CancellationToken 已被释放。

注解
此方法可用于执行一组可能并行的操作。 使用结构传入 ParallelOptions 的取消令牌使调用方能够取消整个操作。

2.示例