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

发布时间:2024年01月19日

目录

一、重载

二、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.示例

文章来源:https://blog.csdn.net/wenchm/article/details/135697802
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。