进程和线程中的新增功能

Windows 7 和 Windows Server 2008 R2 包括以下进程和线程的新编程元素。

新功能

Windows 7 和 Windows Server 2008 R2 的 64 位版本在单个计算机上支持 64 个以上的逻辑处理器。 有关详细信息,请参阅 处理器组

用户模式计划 (UMS) 是一种轻型机制,应用程序可用于计划自己的线程。 有关详细信息,请参阅 用户模式计划

新函数

以下新函数用于处理器和处理器组。

函数 说明
CreateRemoteThreadEx
创建在另一个进程的虚拟地址空间中运行的线程,并选择性地指定扩展属性,例如处理器组相关性。
GetActiveProcessorCount
返回处理器组或系统中的活动处理器数。
GetActiveProcessorGroupCount
返回系统中的活动处理器组数。
GetCurrentProcessorNumberEx
检索运行调用线程的逻辑处理器的处理器组和编号。
GetLogicalProcessorInformationEx
检索有关逻辑处理器和相关硬件关系的信息。
GetMaximumProcessorCount
返回处理器组或系统可以拥有的最大逻辑处理器数。
GetMaximumProcessorGroupCount
返回系统可以拥有的最大处理器组数。
GetNumaAvailableMemoryNodeEx
检索指定节点中作为 USHORT 值可用的内存量。
GetNumaNodeNumberFromHandle
检索与文件句柄的基础设备关联的 NUMA 节点。
GetNumaNodeProcessorMaskEx
检索指定 NUMA 节点的处理器掩码作为 USHORT 值。
GetNumaProcessorNodeEx
检索指定逻辑处理器的节点号作为 USHORT 值。
GetNumaProximityNodeEx
将节点号作为指定邻近标识符的 USHORT 值检索。
GetProcessGroupAffinity
检索指定进程的处理器组相关性。
GetProcessorSystemCycleTime
检索指定组中执行延迟过程调用 (DPC) 和中断服务例程 (ISR) 的周期时间。
GetThreadGroupAffinity
检索指定线程的处理器组相关性。
GetThreadIdealProcessorEx
检索指定线程的理想处理器的处理器数。
QueryIdleProcessorCycleTimeEx
检索指定处理器组中每个逻辑处理器上空闲线程的累积周期时间。
SetThreadGroupAffinity
设置指定线程的处理器组相关性。
SetThreadIdealProcessorEx
设置指定线程的理想处理器,并选择性地检索以前的理想处理器。

 

以下新函数用于线程池。

函数 说明
QueryThreadpoolStackInformation
检索指定线程池中线程的堆栈保留和提交大小。
SetThreadpoolCallbackPersistent
指定回调应在持久性线程上运行。
SetThreadpoolCallbackPriority
指定回调函数相对于同一线程池中的其他工作项的优先级。
SetThreadpoolStackInformation
设置指定线程池中新线程的堆栈保留和提交大小。

 

以下新函数与 UMS 一起使用。

函数 说明
CreateUmsCompletionList
创建 UMS 完成列表。
CreateUmsThreadContext
创建一个 UMS 线程上下文来表示 UMS 工作线程。
DeleteUmsCompletionList
删除指定的 UMS 完成列表。 列表必须为空。
DeleteUmsThreadContext
删除指定的 UMS 线程上下文。 线程必须终止。
DequeueUmsCompletionListItems
从指定的 UMS 完成列表中检索 UMS 工作线程。
EnterUmsSchedulingMode
将调用线程转换为 UMS 计划程序线程。
ExecuteUmsThread
运行指定的 UMS 工作线程。
GetCurrentUmsThread
返回调用 UMS 线程的 UMS 线程上下文。
GetNextUmsListItem
返回 UMS 线程上下文列表中的下一个 UMS 线程上下文。
GetUmsCompletionListEvent
检索与指定的 UMS 完成列表关联的事件的句柄。
QueryUmsThreadInformation
检索有关指定 UMS 工作线程的信息。
SetUmsThreadInformation
为指定的 UMS 工作线程设置特定于应用程序的上下文信息。
UmsSchedulerProc
与 UMS 完成列表关联的应用程序定义的 UMS 计划程序入口点函数。
UmsThreadYield
向运行调用 UMS 工作线程的 UMS 计划程序线程生成控制。

 

新结构

结构 说明
CACHE_RELATIONSHIP
描述缓存属性。
GROUP_AFFINITY
包含处理器组特定的相关性,例如线程的相关性。
GROUP_RELATIONSHIP
包含有关处理器组的信息。
NUMA_NODE_RELATIONSHIP
包含有关处理器组中 NUMA 节点的信息。
PROCESSOR_GROUP_INFO
包含处理器组中处理器的数量和相关性。
PROCESSOR_NUMBER
表示处理器组中的逻辑处理器。
PROCESSOR_RELATIONSHIP
包含有关处理器组中相关性的信息。
SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX
包含有关逻辑处理器和相关硬件的关系的信息。
UMS_CREATE_THREAD_ATTRIBUTES
指定 UMS 工作线程的属性。
UMS_SCHEDULER_STARTUP_INFO
指定 UMS 计划程序线程的属性