TsgcWebSocketServer_HTTPAPI › Zdarzenia › OnAsynchronous
Wywoływane po zakończeniu asynchronicznej operacji wysyłania zainicjowanej przez serwer HTTP API.
property OnAsynchronous: TsgcWSHTTPAPIAsynchronousEvent;
// TsgcWSHTTPAPIAsynchronousEvent = procedure(Sender: TObject; var aConnection: TsgcHTTPAPIContext; var Handled: Boolean) of object
—
Gdy właściwość Asynchronous ma wartość True, wiadomości zapisywane do klienta nie blokują wątku wywołującego: proces roboczy IOCP kolejkuje wysyłkę i natychmiast zwraca sterowanie, a HTTP.SYS sygnalizuje zakończenie operacji w późniejszym czasie. Zdarzenie OnAsynchronous jest wywoływane dla każdej zakończonej operacji asynchronicznej, dzięki czemu aplikacja może zwolnić lub ponownie wykorzystać bazowe bufory. Parametr aConnection wskazuje na kontekst TsgcHTTPAPIContext powiązany z zakończonym żądaniem; ustawienie właściwości Handled na True, gdy aplikacja już usunęła kontekst, zapobiega wykonaniu domyślnego czyszczenia przez komponent. Gdy właściwość Asynchronous ma wartość False (domyślnie), zdarzenie to nigdy nie jest wywoływane.
procedure OnAsynchronous(Sender: TObject; var aConnection: TsgcHTTPAPIContext;
var Handled: Boolean);
begin
DoLog('async write completed');
Handled := False;
end;