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 構造体へのポインター。 List パラメーターと ListEnd パラメーターで指定されたリストが、このリストの先頭に挿入されます。
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 が呼び出されるようになります。