Поделиться через


Функция InterlockedPushListSList

Description

Вставляет список, связанный с singly, в передней части другого последовательно связанного списка.

Доступ к спискам синхронизируется в многопроцессорной системе.

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

Параметры

ListHead [in, out]

Указатель на структуру SLIST_HEADER , представляющую голову последовательно связанного списка. Список, указанный параметрами List и ListEnd , вставляется в передней части этого списка.

Список [in, out]

Указатель на структуру SLIST_ENTRY , представляющую первый элемент в списке для вставки.

ListEnd [in, out]

Указатель на структуру SLIST_ENTRY , представляющую последний элемент в списке для вставки.

Количество [в]

Количество элементов в списке, которые необходимо вставить.

Возвраты

Возвращаемое значение является предыдущим первым элементом списка, указанным параметром 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

Использование singly Linked Lists

API Vertdll, доступные в анклавах VBS