共用方式為


StorPortInterlockedInsertHeadList 函式 (storport.h)

StorPortInterlockedInsertHeadList 例程會以不可部分完成的方式,將專案插入 STOR_LIST_ENTRY 結構的兩次鏈接清單開頭。

語法

ULONG StorPortInterlockedInsertHeadList(
  [in]      PVOID            HwDeviceExtension,
  [in, out] PSTOR_LIST_ENTRY ListHead,
  [in, out] PSTOR_LIST_ENTRY ListEntry,
  [in, out] PSTOR_LIST_ENTRY *Result,
  [in, out] PSTOR_KSPIN_LOCK Lock
);

參數

[in] HwDeviceExtension

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

[in, out] ListHead

表示清單前端 之STOR_LIST_ENTRY 結構的指標。

[in, out] ListEntry

STOR_LIST_ENTRY 結構的指標,表示要插入清單的專案。

[in, out] Result

STOR_LIST_ENTRY 結構的指標,表示插入新專案之前的清單第一個專案。

[in, out] Lock

STOR_KSPIN_LOCK 結構的指標,做為同步處理清單存取的微調鎖定。 微調鎖定的記憶體必須是固定的,而且必須藉由呼叫 StorPortInitializeSpinLock 來初始化。

您只能搭配 StorPortInterlockedXxx清單 例程使用此微調鎖定。

傳回值

StorPortInterlockedInsertHeadList 會傳回狀態代碼,例如下列其中一項:

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

規格需求

需求
目標平台 Universal
標頭 storport.h (包含 Storport.h)

另請參閱

InitializeListHead

InsertHeadList

StorPortInitializeSpinLock

StorPortInterlockedInsertTailList

StorPortInterlockedRemoveHeadList