Freigeben über


ICLRIoCompletionManager::OnComplete-Methode

Benachrichtigt die Common Language Runtime (CLR) über den Status einer E/A-Anforderung, die über einen Aufruf der IHostIoCompletionManager::Bind-Methode gestellt wurde.

HRESULT OnComplete (
    [in] DWORD dwErrorCode,
    [in] DWORD NumberOfBytesTransferred,
    [in] void* pvOverlapped
);

Parameter

  • dwErrorCode
    [in] Ein HRESULT-Wert, der den Status des Bindevorgangs angibt.

    • S_OK gibt an, dass der Vorgang erfolgreich abgeschlossen wurde.

    • HOST_E_INTERRUPTED gibt an, dass der Aufruf vor Abschluss beendet wurde.

    • E_FAIL gibt an, dass ein unbekannter, nicht behebbarer schwerwiegender Fehler auftrat.

  • NumberOfBytesTransferred
    [in] Die Anzahl der bei der Verarbeitung der E/A-Anforderung übertragenen Bytes.

  • pvOverlapped
    [in] Ein Zeiger auf die OVERLAPPED-Struktur, die dem Aufruf der IHostIoCompletionManager::Bind-Methode übergeben wurde.

Rückgabewert

HRESULT

Beschreibungen

S_OK

OnComplete erfolgreich zurückgegeben.

HOST_E_CLRNOTAVAILABLE

Die CLR wurde nicht in einen Prozess geladen oder befindet sich in einem Zustand, in dem sie weder verwalteten Code ausführen noch den Aufruf erfolgreich verarbeiten kann.

HOST_E_TIMEOUT

Der Aufruf hat das Zeitlimit überschritten.

HOST_E_NOT_OWNER

Der Aufrufer ist nicht Besitzer der Sperre.

HOST_E_ABANDONED

Ein Ereignis wurde abgebrochen, während ein blockierter Thread oder eine blockierte Fiber auf das Ereignis gewartet hat.

E_FAIL

Ein unbekannter, schwerwiegender Fehler ist aufgetreten. Nachdem eine Methode E_FAIL zurückgegeben hat, kann die CLR innerhalb des Prozesses nicht mehr verwendet werden. Nachfolgende Aufrufe von Hostmethoden geben HOST_E_CLRNOTAVAILABLE zurück.

Hinweise

Wenn der Host eine E/A-Abschlussabstraktion implementiert, führt die Common Language Runtime E/A-Anforderungen über den Host mithilfe von Methoden von IHostIoCompletionManager aus. Der Host ruft dann die OnComplete-Methode auf, um die Laufzeit über das Ergebnis solcher Anforderungen zu benachrichtigen.

Anforderungen

Plattformen: siehe Systemanforderungen für .NET Framework.

Header: MSCorEE.h

Bibliothek: als Ressource in MSCorEE.dll enthalten

.NET Framework-Versionen: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Siehe auch

Referenz

ICLRIoCompletionManager-Schnittstelle

IHostIoCompletionManager-Schnittstelle

IHostThreadPoolManager-Schnittstelle