InterlockedPushListSListEx 函数 (interlockedapi.h)

在另一个单独链接列表的前面插入一个单独链接列表。 对列表的访问在多处理器系统上同步。 此方法的此版本不使用 __fastcall 调用约定。

语法

PSLIST_ENTRY InterlockedPushListSListEx(
  [in, out] PSLIST_HEADER ListHead,
  [in, out] PSLIST_ENTRY  List,
  [in, out] PSLIST_ENTRY  ListEnd,
  [in]      ULONG         Count
);

参数

[in, out] ListHead

指向 SLIST_HEADER 结构的指针,该结构表示单独链接列表的标题。 ListListEnd 参数指定的列表插入在此列表的前面。

[in, out] List

指向 SLIST_ENTRY 结构的指针,该结构表示列表中要插入的第一项。

[in, out] ListEnd

指向 SLIST_ENTRY 结构的指针,该结构表示列表中要插入的最后一项。

[in] Count

列表中要插入的项数。

返回值

返回值是 ListHead 参数指定的列表中的上一个第一项。 如果列表以前为空,则返回值为 NULL

注解

所有列表项都必须在 MEMORY_ALLOCATION_ALIGNMENT 边界上对齐;否则,此函数的行为将不可预知。 请参阅 _aligned_malloc

要求

要求
最低受支持的客户端 Windows 8 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows Server 2012 [桌面应用 |UWP 应用]
目标平台 Windows
标头 interlockedapi.h (包括 Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

另请参阅

互锁的单独链接Lists

InterlockedFlushSList

InterlockedPopEntrySList

InterlockedPushEntrySList

SLIST_ENTRY

使用 Singly Linked Lists

VBS enclave 中可用的 Vertdll API