共用方式為


StorPortSynchronizeAccess 函式 (storport.h)

StorPortSynchronizeAccess 例程提供迷你埠驅動程式裝置擴充功能的同步存取。

語法

STORPORT_API BOOLEAN StorPortSynchronizeAccess(
  [in]           PVOID                     HwDeviceExtension,
  [in]           PSTOR_SYNCHRONIZED_ACCESS SynchronizedAccessRoutine,
  [in, optional] PVOID                     Context
);

參數

[in] HwDeviceExtension

硬體裝置延伸模組的指標。 這是埠驅動程式代表迷你埠驅動程式配置和初始化的每個 HBA 儲存區域。 迷你埠驅動程式通常會在此延伸模組中儲存 HBA 特定資訊,例如 HBA 的狀態和 HBA 的對應存取範圍。 迷你埠驅動程式呼叫 StorPortInitialize之後,即可立即取得此區域。 埠驅動程式會在移除裝置時釋放此記憶體。

[in] SynchronizedAccessRoutine

呼叫端提供的例程指標,其執行會與與中斷對象相關聯的ISR執行進行同步處理。 如需此例程的原型,請參閱本主題稍後的一節。

[in, optional] Context

呼叫呼叫時,要傳遞至呼叫端所提供回呼例程之內容區域的指標。

傳回值

來自 SynchronizedAccessRoutine的傳回值。

言論

以全雙工模式運作的迷你埠驅動程式,以及存取其 HwStorStartIo 之間共用的資訊, 例程和中斷服務例程,必須使用此例程以同步方式存取共用的數據。

迷你埠驅動程式會將回呼例程傳遞至 storPortSynchronizeAccess StorPortSynchronizeAccess,StorPortSynchronizeAccess 保證對敏感數據結構的獨佔存取之後呼叫它。 迷你埠驅動程式的回呼例程必須符合下列原型:

typedef
BOOLEAN
(* PSTOR_SYNCHRONIZED_ACCESS) (
  IN PVOID HwDeviceExtension,
 IN PVOID Context
  );

其中 HwDeviceExtension 是硬體裝置延伸模組的指標,而 Context 只是呼叫 storPortSynchronizeAccess 時呼叫者 所提供之相同內容資訊的指標

如需詳細資訊,請參閱 同步處理迷你埠驅動程式例程內的同步存取

如需同步處理例程的詳細資訊,請參閱 KeSynchronizeExecution

要求

要求 價值
目標平臺 普遍
標頭 storport.h (包括 Storport.h)
連結庫 Storport.lib

另請參閱

KeSynchronizeExecution