Freigeben über


AtaPortDeviceBusy-Funktion (irb.h)

Die AtaPortDeviceBusy-Routine informiert den Porttreiber darüber, dass das angegebene Gerät ausgelastet ist.

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

Syntax

void AtaPortDeviceBusy(
  [in] PVOID ChannelExtension,
  [in] UCHAR TargetId,
  [in] UCHAR Lun,
  [in] ULONG BusyTimeout
);

Parameter

[in] ChannelExtension

Ein Zeiger auf die Kanalerweiterung.

[in] TargetId

Gibt den Zielbezeichner des Geräts an.

[in] Lun

Gibt die LUN (Logical Unit Number) des Geräts an.

[in] BusyTimeout

Gibt die Zeit in Sekunden an, für die das Gerät vermutlich ausgelastet ist.

Rückgabewert

Keine

Bemerkungen

Wenn der Porttreiber diesen Aufruf empfängt, hält er die Anforderungswarteschlange für das angegebene Gerät für die Zeit an, die durch BusyTimeout angegeben wird. Der Aufrufer kann die Kanalanforderungswarteschlange anstelle der Anforderungswarteschlange für ein einzelnes Gerät anhalten, indem er den Parametern TargetId und Lun den Wildcard-Wert von IDE_UNTAGGED zuweist.

Der Porttreiber setzt angehaltene Warteschlangen nach Ablauf des Timeoutintervalls automatisch fort.

Der Miniporttreiber darf AtaPortDeviceBusy nicht über seine IdeHwInterrupt-Routine aufrufen.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile irb.h (einschließlich Ata.h, Irb.h)

Weitere Informationen

AtaPortDeviceReady

IdeHwInterrupt