Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die ExReleaseResourceForThreadLite Routine gibt die Eingaberessource des angegebenen Threads frei.
Syntax
VOID ExReleaseResourceForThreadLite(
[in, out] PERESOURCE Resource,
[in] ERESOURCE_THREAD ResourceThreadId
);
Parameter
[in, out] Resource
Ein Zeiger auf die ressource, die freigegeben werden soll.
[in] ResourceThreadId
Identifiziert den Thread, der die Ressource ursprünglich erworben hat. Wenn dies nicht der derzeit ausgeführte Thread ist, muss der Aufrufer den Besitz der Ressource durch Aufrufen der ExSetResourceOwnerPointerEx-Routine zuerst im Thread übertragen haben, der die Ressource ursprünglich erworben hat.
Rückgabewert
Nichts
Bemerkungen
Wenn dies nicht der derzeit ausgeführte Thread ist, muss der Aufrufer den Besitz der Ressource durch Aufrufen der ExSetResourceOwnerPointerEx-Routine zuerst im Thread übertragen haben, der die Ressource ursprünglich erworben hat. Dadurch wird sichergestellt, dass Thread A nicht beendet oder gelöscht wird, bevor Thread B die Möglichkeit hat, die Ressource freizugeben.
Sofern der Aufrufer nicht in einem Systemthread ausgeführt wird, muss der Aufrufer die Übermittlung normaler Kernel-APCs explizit deaktivieren, bevor diese Routine aufgerufen wird. Diese Anforderung verhindert, dass Threads angehalten werden, während sie eine Ressource bearbeiten oder halten. Der Aufrufer kann die normale Kernel-APC-Übermittlung deaktivieren, indem die KeEnterCriticalRegion Routine aufgerufen wird. Die Zustellung muss deaktiviert bleiben, bis die Ressource freigegeben wird. An diesem Punkt kann sie durch Aufrufen der KeLeaveCriticalRegion Routine erneut aktiviert werden. Weitere Informationen finden Sie unter Deaktivieren von APCs.
Diese Anforderung gilt nicht für Aufrufe von ExReleaseResourceForThreadLite- aus einem Systemthread. Ein Aufrufer, der in einem Systemthread ausgeführt wird, muss APCs nicht explizit deaktivieren, bevor diese Routine aufgerufen wird.
Anforderungen
| Anforderung | Wert |
|---|---|
| mindestens unterstützte Client- | Ab Windows 2000 verfügbar. |
| Zielplattform- | Universal |
| Header- | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
| Library | NtosKrnl.lib |
| DLL- | NtosKrnl.exe |
| IRQL- | <= DISPATCH_LEVEL |
| DDI-Complianceregeln | ExclusiveResourceAccess(wdm), HwStorPortProhibitedDIs(storport), WithinCriticalRegion(storport), WithinCriticalRegion(storport), WithinCriticalRegion(wdm) |
Siehe auch
ExAcquireResourceExclusiveLite-
ExAcquireSharedStarveExclusive