共用方式為


StorPortInterlockedPushEntrySList 函式 (storport.h)

將專案插入 Storport 受管理連結清單的前面。 多處理器系統上會同步處理清單的存取權。

語法

ULONG StorPortInterlockedPushEntrySList(
  [in]      PVOID                              HwDeviceExtension,
  [in, out] PSTOR_SLIST_HEADER                 SListHead,
  [in, out] __drv_aliasesMem PSTOR_SLIST_ENTRY SListEntry,
  [out]     PSTOR_SLIST_ENTRY                  *Result
);

參數

[in] HwDeviceExtension

主機總線適配卡的硬體裝置擴充功能指標, (HBA) 。

[in, out] SListHead

STOR_SLIST_HEADER 結構的指標,表示單向連結清單的前端。 此結構被視為不透明,且僅供 Storport 驅動程式使用。

[in, out] SListEntry

STOR_SLIST_ENTRY 結構的指標,表示要插入至單一連結清單的專案。

[out] Result

清單項目指標的指標。 傳回的值是存在於清單前方之上一個專案的指標。 這個先前的專案會保留在從 SListEntry 新增的專案後方清單中。 如果清單是空的,則會以 Result 所指向的值傳回 NULL

傳回值

StorPortInterlockedPushEntrySList 會傳回下列其中一個狀態代碼:

傳回碼 Description
STOR_STATUS_NOT_IMPLEMENTED
此函式不會在作用中的操作系統上實作。
STOR_STATUS_SUCCESS
清單專案已成功插入清單中,或已經是空的。
STOR_STATUS_INVALID_PARAMETER
SListHeadSListEntryResult 中的指標為 NULL

備註

由呼叫端配置時,SListEntry 所指向的STOR_SLIST_ENTRY結構必須對齊MEMORY_ALLOCATION_ALIGNMENT界限。 MEMORY_ALLOCATION_ALIGNMENT 定義於 miniport.h中。

規格需求

需求
最低支援的用戶端 從 Windows 8 開始提供。
目標平台 Universal
標頭 storport.h (包含 Storport.h)
IRQL <= DISPATCH_LEVEL

另請參閱

StorPortInitializeSListHead

StorPortInterlockedFlushSList

StorPortInterlockedPopEntrySList

StorPortQueryDepthSList