Freigeben über


AtaPortRequestWorkerRoutine-Funktion (irb.h)

Die AtaPortRequestWorkerRoutine-Routine fordert eine Workerroutine an.

Hinweis Die Modelle ATA-Porttreiber und ATA-Miniporttreiber können in Zukunft geändert oder nicht mehr verfügbar sein. Stattdessen wird empfohlen, die Modelle Storport-Treiber und Storport-Miniporttreiber zu verwenden.
 

Syntax

BOOLEAN AtaPortRequestWorkerRoutine(
  [in] PVOID      ChannelExtension,
       IDE_HW_DPC CallBackRoutine
);

Parameter

[in] ChannelExtension

Ein Zeiger auf die Kanalerweiterung.

CallBackRoutine

Ein Zeiger vom Typ IDE_HW_DPC auf die workerroutine, die aufgerufen werden soll.

Rückgabewert

Keine

Bemerkungen

Der Miniporttreiber kann eine Workerroutine anfordern, um Aufgaben auszuführen, die in der Interruptdienstroutine nicht ausgeführt werden können. Das Übertragen von Vorgängen an eine Workerroutine ist eine effektive Möglichkeit, die Unterbrechungsdienstroutine so klein wie möglich zu halten.

Die Workerroutine wird nicht mit dem Interrupt synchronisiert.

Wenn der Porttreiber die Workerroutine aufruft, übergibt der Porttreiber den Zeiger an die Kanalerweiterung, die in ChannelExtension gespeichert ist.

Der WorkerRoutine-Funktionszeiger wird in Irb.h wie folgt deklariert:

typedef
VOID
(*IDE_HW_DPC) (
  IN PVOID ChannelExtension
  );

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile irb.h (include Ata.h, Irb.h)