TsgcHTTP3Client › Methoden › TunnelPump

TunnelPump Methode

Treibt die QUIC-Ereignisschleife an, sodass Tunneldaten gelesen und über OnTunnelData zugestellt werden.

Syntax

procedure TunnelPump(aTimeoutMs: Integer);

Parameter

NameTypBeschreibung
aTimeoutMsIntegerWie lange gepumpt werden soll, in Millisekunden. Übergeben Sie 0 oder einen negativen Wert für einen einzelnen nicht-blockierenden Durchlauf.

Rückgabewert

Keine. Empfangene Bytes werden über OnTunnelData zugestellt.

Hinweise

Ein Tunnel hat keinen Hintergrund-Lesethread, daher werden eingehende DATA-Frames nur aufgenommen, während der Aufrufer die QUIC-Ereignisschleife antreibt. TunnelPump tut genau das: Es liest von der Verbindung, bis aTimeoutMs verstrichen ist, und löst OnTunnelData für jeden DATA-Frame aus, der auf dem Tunnel-Stream eintrifft.

Rufen Sie es regelmäßig aus einem Timer oder einem dedizierten Thread auf, solange der Tunnel geöffnet ist. Die Übergabe von 0 führt einen einzelnen nicht-blockierenden Lesedurchlauf aus, was zu einer engen Polling-Schleife passt, die auch andere Arbeit zu erledigen hat.

Die Methode kehrt sofort zurück, wenn der Client nicht verbunden ist.

Dieses Mitglied ist derzeit nur in der Delphi/C++Builder-Implementierung verfügbar.

Beispiel



// drive the tunnel for one second

oClient.TunnelPump(1000);



// or a single non-blocking pass inside a loop

while vRunning do

begin

  oClient.TunnelPump(0);

  Application.ProcessMessages;

end;

Zurück zu Methoden