InterlockedPushListSList 函数

说明

在另一个单链表的前面插入一个单链表。

对列表的访问是在多处理器系统上同步的。

PSLIST_ENTRY  FASTCALL InterlockedPushListSList(
  _Inout_ PSLIST_HEADER ListHead,
  _Inout_ PSLIST_ENTRY  List,
  _Inout_ PSLIST_ENTRY  ListEnd,
  _In_    ULONG         Count
);

参数

ListHead [in, out]

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

List [in, out]

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

ListEnd [in, out]

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

Count [in]

列表中要插入的项目数。

返回

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

注解

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

Windows 8 和 Windows Server 2012: 此函数已由 InterlockedPushListSListEx 取代。

NTDDI_VERSION 设置为 NTDDI_WIN8 或更高的情况下进行编译时,对 InterlockedPushListSList 的调用将转到 InterlockedPushListSListEx

另请参阅

联锁单向链接列表

InterlockedPopEntrySList

InterlockedPushEntrySList

InterlockedPushListSListEx

InterlockedFlushSList

SLIST_ENTRY

使用单向链接列表

VBS Enclave 中提供的 Vertdll API