concurrency 命名空间

Concurrency 命名空间提供了一些类和函数,可以利用它们访问并发运行时(针对 C++ 的并发编程框架)。 有关详细信息,请参阅并发运行时

namespace concurrency;

成员

命名空间

名称

描述

concurrency::extensibility Namespace

Typedef

名称

描述

runtime_object_identity

每个消息实例后面都有一个标识,因为它已被克隆并在消息元素之间传递。 这不能为消息对象的地址。

task_status

表示任务最终状态的类型。 有效值为 completedcanceled

TaskProc

任务的基本抽象定义为 void (__cdecl * TaskProc)(void *)。 调用 TaskProc 来调用任务正文。

TaskProc_t

任务的基本抽象定义为 void (__cdecl * TaskProc_t)(void *)。 调用 TaskProc 来调用任务正文。

名称

描述

affinity_partitioner 类

affinity_partitioner 类类似于 static_partitioner 类,但是,它通过映射子区域的选择提高缓存到工作线程。 它可以显着提高性能,当循环重新实现在同一组数据时,数据放入缓存。 请注意必须与并行循环的后续迭代使用同一 affinity_partitioner 对象,受益于数据位置,该循环在特定的数据设置中执行。

agent 类

旨在用作所有独立代理的基类的类。 用于对其他代理隐藏状态并通过消息传递进行交互。

auto_partitioner 类

auto_partitioner 类表示默认值方法 parallel_forparallel_for_eachparallel_transform 使用循环访问的范围进行分区。 分区的方法使用范围窃取为加载平衡以及每次循环访问的取消。

bad_target 类

此类描述当消息块将指针传给目标,而该目标对于正在执行的操作无效时抛出异常。

call 类

call 消息块是多源有序的 target_block,可以在接收消息时调用指定的函数。

cancellation_token 类

cancellation_token 类表示能够确定某项操作是否已请求取消的功能。 给定的标记可与 task_groupstructured_task_grouptask 关联以实现隐式取消。 它还可以因取消而进行轮询,或则当取消关联的 cancellation_token_source 时,还可以注册回调。

cancellation_token_registration 类

cancellation_token_registration 类表示来自 cancellation_token 的回调通知。 如果 cancellation_token 上的 register 方法用于接收取消何时发生的通知,系统就会将 cancellation_token_registration 对象作为回调的句柄返回,让调用方可以请求不再通过使用 deregister 方法实现的特定回调。

cancellation_token_source 类

cancellation_token_source 类表示能够取消某些可取消操作的功能。

choice 类

choice 消息块是多源且单个目标的块,表示与一组源进行的控制流交互。 选择块将等待多个源的任何一个来生成消息,并将传播生成该消息的源的索引。

combinable 类

combinable<T> 对象旨在提供数据的线程私有副本,以在并行算法期间执行无锁线程本地子计算。 在并行操作结束时,线程私有 sub-computation 则可以合并到最终结果。 该类可替代共享变量使用,如果在该共享变量上可能存在大量争用,则可能会使性能提高。

concurrent_priority_queue 类

concurrent_priority_queue 类是允许多个线程同时推送和弹出项的容器 。 项目在用作模板参数,取决于功能符提供的优先级排序中弹出。

concurrent_queue 类

concurrent_queue 类是允许对其元素进行先进先出访问的序列容器类。 它支持一组有限的并发安全操作,如 pushtry_pop

concurrent_unordered_map 类

concurrent_unordered_map 类是控制 std::pair<const _Key_type, _Element_type> 类型的元素的长短不一序列的并发安全容器。 序列以某种方式显示,该方式支持并发安全追加、元素访问、迭代器访问和迭代器遍历操作。

concurrent_unordered_multimap 类

concurrent_unordered_multimap 类是控制 std::pair<const _Key_type, _Element_type> 类型的元素长短不一序列的并发安全容器。 序列以某种方式显示,该方式支持并发安全追加、元素访问、迭代器访问和迭代器遍历操作。

concurrent_unordered_multiset 类

concurrent_unordered_multiset 类是控制安全类型元素的长短不一序列的并发安全容器 。 序列以某种方式显示,该方式支持并发安全追加、元素访问、迭代器访问和迭代器遍历操作。

concurrent_unordered_set 类

concurrent_unordered_set 类是控制安全类型元素的长短不一序列的并发安全容器。 序列以某种方式显示,该方式支持并发安全追加、元素访问、迭代器访问和迭代器遍历操作。

concurrent_vector 类

concurrent_vector 类是允许对任意元素进行随机访问的序列容器类。 它支持并发安全追加、元素访问、迭代器访问和迭代器遍历操作。

Context 类

表示执行上下文的抽象。

context_self_unblock 类

该类描述当从同一上下文调用 Context 对象的 Unblock 方法时抛出的异常。 这将指示给定上下文自身解锁的尝试。

context_unblock_unbalanced 类

此类描述当对 Context 对象的 BlockUnblock 方法调用配对不恰当时抛出的异常。

critical_section 类

一个明确知道并发运行时的非重入互斥体。

CurrentScheduler 类

表示与调用上下文相关联的当前计划程序的抽象。

default_scheduler_exists 类

此类描述当在进程内已存在默认计划程序 Scheduler::SetDefaultSchedulerPolicy 方法调用时抛出的异常。

event 类

一个明确知道并发运行时的手动重置事件。

improper_lock 类

此类描述当不正确地获取锁定时抛出的异常。

improper_scheduler_attach 类

此类描述当 Attach 方法调用已附加到当前上下文的 Scheduler 对象时抛出的异常。

improper_scheduler_detach 类

此类描述当在上下文上调用 CurrentScheduler::Detach 方法,而该上下文尚未通过 Scheduler 对象的 Attach 方法附加至任何计划程序时抛出的异常。

improper_scheduler_reference 类

此类描述当从不是该计划程序一部分的上下文中正在关闭的 Scheduler 对象上调用 Reference 方法时抛出的异常。

invalid_link_target 类

此类描述当调用消息块的 link_target 方法,并且消息块无法链接到目标时抛出的异常 。 这可能是超出消息块允许的链接数目或两次尝试将特定目标链接至同一源的结果。

invalid_multiple_scheduling 类

此类描述通过task_groupstructured_task_group 对象的 run 方法,而不中间调用 waitrun_and_wait 方法来多次计划 task_handle 对象而抛出的异常。

invalid_operation 类

此类描述执行无效操作时引发的异常,该类不比并发运行时引发的另一异常类型描述得更为准确。

invalid_oversubscribe_operation 类

此类描述当调用 Context::Oversubscribe 方法时引发的异常,同时 _BeginOversubscription 参数设置为 false,不在 _BeginOversubscription 参数设置为 true 时事先调用 Context::Oversubscribe 方法。

invalid_scheduler_policy_key 类

此类描述每当无效或未知项传递至 SchedulerPolicy 对象构造函数,或 SchedulerPolicy 对象的 SetPolicyValue 方法被传递了关键值,而该关键值必须经过其他诸如 SetConcurrencyLimits 方法的方式更改时抛出的异常。

invalid_scheduler_policy_thread_specification 类

此类描述当尝试设置 SchedulerPolicy 对象的并发限制,使得 MinConcurrency 键的值小于 MaxConcurrency 键的值时抛出的异常。

invalid_scheduler_policy_value 类

此类描述当 SchedulerPolicy 对象的策略项设置为该项无效值时抛出的异常。

ISource 类

ISource 类是所有源块的接口。 源块将消息传播到 ITarget 块。

ITarget 类

ITarget 类是所有目标块的接口。 目标块使用 ISource 块提供给他们的消息。

join 类

join 消息块是一个单目标、多源、有序的 propagator_block,可以合并来自其每个源的类型为 _Type 的消息。

location 类

硬件的抽象物理位置。

message 类

包含正在消息块之间传递数据负载的基本消息信封。

message_not_found 类

此类描述当消息块找不到请求的消息时抛出的异常。

message_processor 类

message_processor 类是用于处理 message 对象的抽象基类。 信息的顺序无法确保固定。

missing_wait 类

此类描述当执行对象的析构函数时仍然将任务计划至 task_groupstructured_task_group 对象时抛出的异常。 如果析构函数因为堆栈展开为异常的结果而被获得,将永远不会抛出此异常。

multi_link_registry 类

multi_link_registry 对象是 network_link_registry,管理多个源块或多个目标块。

multitype_join 类

multitype_join 消息块是一个多源、单目标的消息块,可以合并来自其每个源的不同类型的消息并将组合消息的元组提供给其目标。

nested_scheduler_missing_detach 类

此类描述并发运行时检测到您忽略在通过 Scheduler 对象的 Attach 方法在附加至第二计划程序的上下文上调用 CurrentScheduler::Detach 方法时抛出的异常。

network_link_registry 类

network_link_registry 的抽象基类管理源和目标块之间的链接。

operation_timed_out 类

此类描述操作超时时抛出的异常。

ordered_message_processor 类

ordered_message_processor 是允许消息块按接受的顺序处理消息的 message_processor

overwrite_buffer 类

overwrite_buffer 消息块是一个多目标、多源、有序的 propagator_block,一次能够存储一条消息。 新消息覆盖之前保存的消息。

progress_reporter 类

进程报告程序类允许报告特定类型的进程通知。 每个 progress_reporter 对象绑定到特定异步操作。

propagator_block 类

propagator_block 类是同时为源和目标的消息块的一个抽象基类。 组合了 source_blocktarget_block 类的功能。

reader_writer_lock 类

只能本地旋转的基于编写器首选队列的读取器-编写器锁。 锁授予对编写器的先进先出 (FIFO) 访问,并使读取器在编写器在持续负载的情况下停止。

ScheduleGroup 类

表示计划组的抽象。 计划组组织受益于在时间上(通过在移到另一个组之前执行同一组中另一个任务)或空间上(通过在同一 NUMA 节点或物理套接字上执行同一个组内的多项)紧密安排在一起的一组相关工作。

Scheduler 类

表示并发运行时计划程序的抽象。

scheduler_not_attached 类

此类描述当需要一个计划程序来附加到当前的上下文来执行操作,而实际并未如此时抛出的异常。

scheduler_resource_allocation_error 类

此类描述由于无法在并发运行时中获取关键资源而抛出的异常。

scheduler_worker_creation_error 类

此类介绍由于并发运行时未能创建辅助执行上下文而抛出异常。

SchedulerPolicy 类

SchedulerPolicy 类包含一组键/值对,一个用于每个策略元素,其控制计划程序实例的行为。

simple_partitioner 类

simple_partitioner 类表示 parallel_for重复地静态分区该范围。 分区程序将此范围转换为区块这样每个区块具有区块范围指定迭代的最小数目。

single_assignment 类

single_assignment 消息块是一个多目标、多源、有序的 propagator_block,能够存储单个、只写一次的 message

single_link_registry 类

single_link_registry 对象是一个 network_link_registry,其只管理单个源或目标块。

source_block 类

source_block 是仅限于源的块的抽象基类。 该类提供了基本的链接管理功能,还提供了常见的错误检查。

source_link_manager 类

source_link_manager 对象管理 ISource 块的消息阻止网络链接。

static_partitioner 类

static_partitioner 类表示 parallel_for重复地静态分区该范围。 尽管有辅助可用于该基础的计划程序,分区程序将此范围分割成许多区块。

structured_task_group 类

structured_task_group 类表示并行工作的高度结构化集合。 可以使用 task_handle 对象将各个任务排队至 structured_task_group 中,并等待它们完成,或在它们完成执行之前取消任务组,这将中止尚未开始执行的所有任务。

target_block 类

target_block 类是一个抽象基类,提供基本链接管理功能和仅限于目标的块的错误检查。

task 类(并发运行时)

并行模式库 (PPL) task 类。 task 对象表示可异步且可与其他任务同时执行的工作,以及由并发运行时中的并行算法生成的并行工作。 它在成功完成时生成 _ResultType 类型结果。 类型为 task<void> 的任务不产生结果。 任务可以等待以及独立于其他任务取消。 它还可能由使用继续 (then)、联接 (when_all) 和选项 (when_any) 模式的其他任务构成。

task_canceled 类

此类描述了 PPL 任务层为了强制取消当前任务而引发的异常。 针对取消的任务,它还由任务上的 get() 方法引发。

task_completion_event 类

task_completion_event 类允许你延迟任务的执行,直到满足条件,或启动任务以响应外部事件。

task_continuation_context 类

task_continuation_context 类允许你指定要在何处执行继续。 它仅在从 Windows 应用商店应用程序使用此类时才有用。 对于非 Windows 应用商店应用程序,任务延续执行上下文通过运行时确定,并且不可配置。

task_group 类

task_group 类表示可以等待或取消的并行工作集合。

task_handle 类

task_handle 类表示单个并行工作项目。 它封装了说明和执行一段工作所需的数据。

task_options 类(并发运行时)

表示创建任务的允许选项

timer 类

timer 消息块是一个单目标 source_block,能够在经过指定的时间段后或在特定时间间隔向其目标发送消息。

transformer 类

transformer 消息块是一个单目标、多源、有序的 propagator_block,可以接受同一类型的消息,并能够存储大量不同类型的消息。

unbounded_buffer 类

unbounded_buffer 消息块是一个多目标、多源、有序的 propagator_block,能够存储大量消息。

unsupported_os 类

此类描述使用不受支持的操作系统时抛出的异常。

结构

名称

描述

DispatchState 结构

DispatchState 结构用于将状态传递给 IExecutionContext::Dispatch 方法。 它描述了一些情形,即调用 IExecutionContext 接口上的 Dispatch 方法的情形。

IExecutionContext 结构

可以在指定虚拟处理器上运行并可以协作切换上下文的执行上下文的接口。

IExecutionResource 结构

硬件线程的抽象。

IResourceManager 结构

并发运行时资源管理器的接口。 这是计划程序与资源管理器通信的接口。

IScheduler 结构

工作计划程序抽象的接口。 并发运行时的资源管理器使用该接口与工作计划程序进行通信。

ISchedulerProxy 结构

计划程序用来与并发运行时的资源管理器进行通信以协商资源分配的接口。

IThreadProxy 结构

执行线程的抽象。 根据您创建的计划程序的 SchedulerType 策略密钥,资源管理器将授予您由普通的 Win32 线程或用户模式计划 (UMS) 线程支持的线程代理。 UMS 线程在版本为 Windows 7 或更高版本的 64 位操作系统上支持。

ITopologyExecutionResource 结构

为可执行资源的接口所定义的资源管理器。

ITopologyNode 结构

为拓扑节点的接口所定义的资源管理器。 节点包含一个或多个执行资源。

IUMSCompletionList 结构

表示 UMS 完成列表。 如果为 UMS 线程块,将分离计划程序指定的计划上下文,以决定初始线程阻塞时,在底层虚拟处理器根上计划什么。 如果初始线程未阻止,则操作系统会让之在完成列表中排队,该列表可以通过该接口访问。 计划程序可以在指定的计划上下文上或搜索工作的任意地方查询完成列表。

IUMSScheduler 结构

希望并发运行时资源管理器向其传递用户模式计划 (UMS) 线程的工作计划程序抽象的接口。 资源管理器使用该接口与 UMS 线程计划程序通信。 IUMSScheduler 接口从 IScheduler 接口继承。

IUMSThreadProxy 结构

执行线程的抽象。 如果要为计划程序授予用户模式可计划 (UMS) 线程,则将计划程序策略元素 SchedulerKind 的值设置为 UmsThreadDefault,并实现 IUMSScheduler 接口。 UMS 线程仅在版本为 Windows 7 或更高版本的 64 位操作系统上支持。

IUMSUnblockNotification 结构

表示来自资源管理器的通知,说明阻塞并触发返回到计划程序的指定计划上下文的线程代理已解除阻塞,并已准备好进行计划。 一旦返回自 GetContext 方法的线程代理相关的执行上下文被重新计划,则该接口无效。

IVirtualProcessorRoot 结构

线程代理可在其中执行的硬件线程的抽象。

scheduler_interface 结构

计划程序接口

scheduler_ptr 结构(并发运行时)

表示指向计划程序的指针。 此类存在是为了通过使用 shared_ptr 允许共享生存期的规范,或通过使用原始指针允许无格式引用的规范。

枚举

名称

描述

agent_status 枚举

agent 的有效状态。

Agents_EventType 枚举

可以使用由代理库提供的跟踪功能对该类型事件进行跟踪。

ConcRT_EventType 枚举

可以使用由并发运行时提供的跟踪功能要跟踪的事件类型。

Concrt_TraceFlags 枚举

事件类型的跟踪标志

CriticalRegionType 枚举

上下文处于其中的关键区域类型。

DynamicProgressFeedbackType 枚举

DynamicProgressFeedback 策略用于描述计划程序的资源是否根据从计划程序收集的统计信息或只根据进出闲置状态的虚拟处理器来重新平衡,方法是通过在 IVirtualProcessorRoot 接口上调用 ActivateDeactivate 方法。 有关可用计划程序策略的更多信息,请参见 PolicyElementKey 枚举

join_type 枚举

join 消息块的类型。

message_status 枚举

message 对象到块的提供的有效响应。

PolicyElementKey 枚举

描述计划程序行为各方面的策略键。 每个策略元素由键值对描述。 有关计划程序策略及其对计划程序的影响的详细信息,请参见任务计划程序(并发运行时)

SchedulerType 枚举

SchedulerKind 策略使用以描述应由计划程序用于基础执行上下文的线程类型。 有关可用计划程序策略的更多信息,请参见 PolicyElementKey 枚举

SchedulingProtocolType 枚举

SchedulingProtocol 策略用于描述将那个计划算法计划程序。 有关可用计划程序策略的更多信息,请参见 PolicyElementKey 枚举

SwitchingProxyState 枚举

用于表示线程代理执行到不同线程代理的协作性上下文切换时,线程代理所处状态。

task_group_status 枚举

描述 task_groupstructured_task_group 对象的执行状态。 通过等待计划在任务组完成的任务的多种方法返回此类型的值。

WinRTInitializationType 枚举

用于使 WinRTInitialization 策略描述Windows 运行时是否以及如何在应用程序调度程序线程上被初始化,该应用程序在Windows 8 或更高版本操作系统上运行。 有关可用计划程序策略的更多信息,请参见 PolicyElementKey 枚举

函数

名称

描述

Alloc 函数

通过并发运行时指定分配内存块的大小。

asend 函数

已重载。 异步发送操作计划任务从而将数据传播到目标块。

cancel_current_task 函数

获取当前正在执行的任务。 此函数可从任务体中调用以中止任务的执行并使其输入 canceled 状态。 虽然您可以使用它响应 is_task_cancellation_requested 函数,但您也可以单独使用它对当前正在执行的任务进行取消。

如果您不在 task 主体内,则它不是调用此函数的支持方案。 这样操作将导致未定义行为,例如出现崩溃或应用程序挂起。

create_async 函数

基于用户提供的 lambda 或函数对象创建 Windows 运行时异步构造。 create_async 的返回类型是基于传递给方法的 lambda 签名的一个 IAsyncAction^IAsyncActionWithProgress<TProgress>^IAsyncOperation<TResult>^IAsyncOperationWithProgress<TResult, TProgress>^

create_task 函数

已重载。 创建一个 PPL 任务对象。 只要是在您会使用任务构造函数的地方都可以使用 create_task。 主要为了方便而提供,因为它允许在创建任务时使用 auto 关键字。

CreateResourceManager 函数

返回表示并发运行时资源管理器的单一实例的接口。 资源管理器负责将资源分配给要彼此相互合作的计划程序。

DisableTracing 函数

禁止在并发运行时中跟踪。 默认情况下,因为 ETW 跟踪已注销所以此功能已弃用。

EnableTracing 函数

启用在并发运行时中跟踪。 默认情况下,因为 ETW 跟踪现在被启用所以此功能已弃用。

Free 函数

释放先前通过 Alloc 方法分配给并发运行时的缓存子分配器的内存块。

get_ambient_scheduler 函数(并发运行时)

GetExecutionContextId 函数

返回可以分配给实现 IExecutionContext 接口的执行上下文的唯一标识符。

GetOSVersion 函数

返回操作系统版本。

GetProcessorCount 函数

返回基础系统上的硬件线程数。

GetProcessorNodeCount 函数

返回基础系统上的 NUMA 节点数或处理器包数。

GetSchedulerId 函数

返回可以分配给实现 IScheduler 接口的计划程序的唯一标识符。

interruption_point 函数

创建一个取消的中断点。 如果在此函数调用的上下文中进行取消,则将抛出中止当前执行并行工作执行的内部异常。 如果取消正在进行,函数不执行任何操作。

is_current_task_group_canceling 函数

返回在当前上下文上正在执行内联的任务组是否正在活动的取消的过程中(或不久将取消)的指示。 请注意,如果当前上下文上没有任何任务组当前正在执行内联,将返回 false

is_task_cancellation_requested 函数

返回一个指示,指示当前运行的任务是否收到取消执行的请求。 如果使用取消标记创建任务,则在任务上请求取消,且取消与标记相关联的标记源。

make_choice 函数

已重载。 从可选的 SchedulerScheduleGroup 及两个或更多输入源之间构造 choice 消息块。

make_greedy_join 函数

已重载。 从可选的 SchedulerScheduleGroup 及两个或更多输入源之间构造 greedy multitype_join 消息块。

make_join 函数

已重载。 从可选的 SchedulerScheduleGroup 及两个或更多输入源之间构造 non_greedy multitype_join 消息块。

make_task 函数

用于创建 task_handle 对象的工厂方法。

parallel_buffered_sort 函数

已重载。 在指定范围内将元素平行组合到非递减秩序,或基于二进制谓词指定的秩序规则中。 此函数语义与std::sort 相似,因为它是基于比较、不稳定、就地排序,但它需要 O(n) 额外的空间,并需要为元素默认值初始化排序。

parallel_for 函数

已重载。 parallel_for 循环访问一个索引范围,并在每次迭代时以并行方式执行用户提供的函数。

parallel_for_each 函数

已重载。 parallel_for_each 以并行方式将指定函数应用于范围内的每个元素。 除了并行对元素执行迭代及迭代的顺序未指定,语义上等效于 for_each 命名空间中的 std 函数。 实参 _Func 必须支持窗体 operator()(T) 的函数调用运算符,其中形参 T 是正在进行迭代的容器的项类型。

parallel_invoke 函数

已重载。 执行作为并行和块中的参数而提供的函数对象,直至其完成执行。 每个函数对象可以是 lambda 表达式、函数指针或支持带有签名 void operator()() 的函数调用运算符的任何对象。

parallel_radixsort 函数

已重载。 在指定范围将元素组合到非降序排序使用基数排序算法中去。 这是一个稳定排序,它需要一个可以将元素按无符号整数键排序的投影函数。 默认初始化对于元素排序是必需的。

parallel_reduce 函数

已重载。 在指定范围内通过计算连续的部分总和来计算所有元素的总和,或并行计算连续的部分结果,该结果类似于从使用指定的二元运算而不是求和获得的。 parallel_reduce 语义与 std::accumulate相似,除此之外,前提是二元运算是关联的,并需要标识值而不是初始值。

parallel_sort 函数

已重载。 在指定范围内将元素平行组合到非递减秩序,或基于二进制谓词指定的秩序规则中。 此函数语义与 std::sort 相似,因为它是基于比较、不稳定、就地排序的。

parallel_transform 函数

已重载。 从两个资源范围应用指定的函数对象到资源范围的每个元素或每对元素,并同时复制函数对象的返回值赋给目标范围。 此功能在语义上与 std::transform相等。

receive 函数

已重载。 一般接收实现,允许上下文仅等待来自一个源的数据并筛选所接受的值。

run_with_cancellation_token 函数

在特定取消标记的上下文中立即同步执行函数对象。

send 函数

已重载。 同步发送操作会一直等待,直到目标接受或拒绝消息。

set_ambient_scheduler 函数(并发运行时)

set_task_execution_resources 函数

已重载。 并发运行时内部辅助线程限制资源的执行,指定关联设置。

只有在资源管理器创建之前,或者在两种资源管理器生存期之间调用此方法它是有效的。 只要资源管理器无法调用,它就可以被多次调用。 关联限制被设置后,它仍然有效,直至下一个有效的调用 set_task_execution_resources 方法。

关联掩码提供了不需要子集进程的关联掩码。 如果需要,将更新过程关联。

swap 函数

交换两个 concurrent_vector 对象的元素。

task_from_exception 函数(并发运行时)

task_from_result 函数(并发运行时)

Trace_agents_register_name 函数

在 ETW 跟踪下关联给定名称到消息块或代理。

try_receive 函数

已重载。 一般尝试接收实现,允许上下文仅查找<来自一个源的数据并筛选所接受的值。 如果数据未就绪,则该方法将返回 false。

wait 函数

暂停当前上下文指定时间量。

when_all 函数

创建一个任务,在作为参数提供的所有任务成功完成后,此任务将成功完成。

when_any 函数

已重载。 创建一个任务,在作为参数提供的任何任务成功完成后,此任务将成功完成。

运算符

名称

描述

operator!= 运算符

测试运算符左侧的 concurrent_vector 对象是否不等于右侧的 concurrent_vector 对象。

operator&& 运算符

已重载。 创建一个任务,在作为参数提供的两个任务成功完成后,此任务将成功完成。

operator|| 运算符

已重载。 创建一个任务,在作为参数提供的任何任务成功完成后,此任务将成功完成。

operator< 运算符

测试运算符左侧的 concurrent_vector 对象是否小于右侧的 concurrent_vector 对象。

operator<= 运算符

测试运算符左侧的 concurrent_vector 对象是否小于或等于右侧的 concurrent_vector 对象。

operator== 运算符

测试运算符左侧的 concurrent_vector 对象是否等于右侧的 concurrent_vector 对象。

operator> 运算符

测试运算符左侧的 concurrent_vector 对象是否大于右侧的 concurrent_vector 对象。

operator>= 运算符

测试运算符左侧的 concurrent_vector 对象是否大于或等于右侧的 concurrent_vector 对象。

常量

名称

描述

AgentEventGuid 常量

GUID 分类 ({B9B5B78C-0713-4898-A21A-C67949DCED07}) 描述 ETW 事件在并发运行时中由代理库激发。

ChoreEventGuid 常量

一个类别 GUID,描述由与日常任务或任务直接相关的并发运行时激发的 ETW 事件。

ConcRT_ProviderGuid 常量

并发运行时的 ETW 提供程序 GUID。

CONCRT_RM_VERSION_1 常量

表示支持 Visual Studio 2010 中定义的资源管理器接口。

ConcRTEventGuid 常量

一个类别 GUID,描述由未通过其他类别更具体介绍的并发运行时激发的 ETW 事件。

ContextEventGuid 常量

一个类别 GUID,描述由与上下文直接相关的并发运行时激发的 ETW 事件。

COOPERATIVE_TIMEOUT_INFINITE 常量

表示等待永远不应超时的值。

COOPERATIVE_WAIT_TIMEOUT 常量

表示等待超时的值。

INHERIT_THREAD_PRIORITY 常量

策略键 ContextPriority 的特殊值,指示计划程序中所有上下文的线程优先级别都应与创建该计划程序的线程的优先级别相同。

LockEventGuid 常量

一个类别 GUID,描述由与锁定直接相关的并发运行时激发的 ETW 事件。

MaxExecutionResources 常量

策略键 MinConcurrencyMaxConcurrency 的特殊值。 默认值为没有其他约束的机器上的硬件线程数。

PPLParallelForeachEventGuid 常量

一个类别 GUID,描述由与 parallel_for_each 函数的用法直接相关的并发运行时激发的 ETW 事件。

PPLParallelForEventGuid 常量

一个类别 GUID,描述由与 parallel_for 函数的用法直接相关的并发运行时激发的 ETW 事件。

PPLParallelInvokeEventGuid 常量

一个类别 GUID,描述由与 parallel_invoke 函数的用法直接相关的并发运行时激发的 ETW 事件。

ResourceManagerEventGuid 常量

一个类别 GUID,描述由与资源管理器直接相关的并发运行时激发的 ETW 事件。

ScheduleGroupEventGuid 常量

一个类别 GUID,描述由与计划组直接相关的并发运行时激发的 ETW 事件。

SchedulerEventGuid 常量

一个类别 GUID,描述由与计划程序活动直接相关的并发运行时激发的 ETW 事件。

VirtualProcessorEventGuid 常量

一个类别 GUID,描述由与虚拟处理器直接相关的并发运行时激发的 ETW 事件。

要求

**标头:**agents.h, concrt.h, concrtrm.h, concurrent_priority_queue.h, concurrent_queue.h, concurrent_unordered_map.h, concurrent_unordered_set.h, concurrent_vector.h, internal_concurrent_hash.h, internal_split_ordered_list.h, ppl.h, pplcancellation_token.h, pplconcrt.h, pplinterface.h, ppltasks.h

请参见

其他资源

参考(并发运行时)