TsgcWebSocketServer_HTTPAPI › 이벤트 › OnAsynchronous
HTTP API 서버가 시작한 비동기 전송 작업이 완료되면 발생합니다.
__property TsgcWSHTTPAPIAsynchronousEvent OnAsynchronous;
// typedef void __fastcall (__closure *TsgcWSHTTPAPIAsynchronousEvent)(TObject * Sender, TsgcHTTPAPIContext * &aConnection, bool &Handled);
—
Asynchronous 속성이 True이면 클라이언트에 작성된 메시지가 호출 스레드를 차단하지 않습니다: IOCP worker가 전송을 큐에 넣고 즉시 반환하며, HTTP.SYS가 나중에 완료를 신호합니다. OnAsynchronous는 완료된 모든 비동기 작업에 대해 발생하므로 애플리케이션이 기본 버퍼를 해제하거나 재사용할 수 있습니다. aConnection 매개변수는 완료된 요청과 연결된 TsgcHTTPAPIContext를 가리킵니다. 애플리케이션이 이미 컨텍스트를 처리한 경우 Handled를 True로 설정하여 구성 요소가 기본 정리를 실행하지 않도록 하십시오. Asynchronous가 False(기본값)이면 이 이벤트는 발생하지 않습니다.
void OnAsynchronous(TObject *Sender, TsgcHTTPAPIContext *&aConnection,
bool &Handled)
{
DoLog("async write completed");
Handled = false;
}