Freigeben über


ClosePseudoConsole-Funktion

Beendet Ressourcen, die dem angegebenen Pseudoconsole zugeordnet sind, und gibt sie frei.

Syntax

void WINAPI ClosePseudoConsole(
    _In_ HPCON hPC
);

Parameter

hPC [in]
Ein Handle zu einer aktiven Pseudokonsole, wie es von CreatePseudoConsole geöffnet wurde.

Rückgabewert

nichts

Bemerkungen

Das Schließen einer Pseudoconsole sendet CTRL_CLOSE_EVENT an jede Clientanwendung, die noch verbunden ist. Bis die Anwendungen die Verbindung getrennt haben, können sie weitere Ausgaben schreiben. Aus diesem Grund wird von Ihrer Anwendung erwartet, dass sie entweder die Ausgabe-Pipe schließt, bevor sie ClosePseudoConsole or to continue reading from the pipe until after ClosePseudoConsole has returned.

Hinweis

Ab Windows 11 24H2 (Build 26100) kehrt ClosePseudoConsole will return immediately to avoid accidental deadlocks. Frühere Versionen warten auf unbestimmte Zeit, bis die Pseudokonsole beendet wird. Wenn Sie wissen wollen, wann alle Clients die Verbindung abgebrochen haben, lesen Sie einfach weiter aus der Output-Pipe, bis diese geschlossen wurde.

Warnung

Aufgrund des oben Genannten kann das Versäumnis, die Ausgabepipeline zu schließen oder zu entwässern, dazu führen, dass ClosePseudoConsole unendlich in früheren Windows-Versionen wartet. Um Deadlocks in älteren Versionen zu vermeiden, rufen Sie ClosePseudoConsole nicht im selben Thread auf, von dem Sie die Ausgabepipeline lesen, es sei denn, die Ausgabepipeline wurde zuvor von Ihnen geschlossen oder von der Pseudoconsole geschlossen.

Anforderungen

   
Mindest unterstützter Client Windows 10 Oktober 2018 Update (Version 1809) [nur Desktop-Apps]
Unterstützter Mindestserver Windows Server 2019 [Nur Desktop-Apps]
Kopfzeile ConsoleApi.h (über WinCon.h, Windows.h einschließen)
Bibliothek Kernel32.lib
DLL Kernel32.dll

Siehe auch

Pseudokonsolen

CreatePseudoConsole

ResizePseudoConsole