TsgcHTTPServer › Eventos › OnSendBufferFull

OnSendBufferFull Evento

Se activa cuando la cola de salida de una conexión de cliente ha alcanzado su límite configurado, antes de que se aplique la política de desbordamiento. Heredado del motor de servidor compartido; ver Observaciones.

Sintaxis

property OnSendBufferFull: TsgcWSSendBufferFullEvent;
// TsgcWSSendBufferFullEvent = procedure(Connection: TsgcWSConnection; const QueueSize: Integer; var DropMessage: Boolean) of object

Valor Predeterminado

—

Observaciones

OnSendBufferFull pertenece al mismo mecanismo de cola de salida por conexión utilizado en todos los componentes de servidor sgc: cuando la cola está habilitada y la cola de una conexión ya contiene el número máximo configurado de mensajes, este evento se genera con la Connection afectada y el QueueSize actual, antes de que se aplique la política de desbordamiento (descartar el más antiguo, descartar el más nuevo o desconectar). TsgcHTTPServer no publica la propiedad que habilita y configura esta cola, y nunca envía mensajes WebSocket a través de ella, por lo que en la práctica este evento no se activa en este componente; permanece publicado por compatibilidad de interfaz con los demás componentes de servidor construidos sobre el mismo motor. DropMessage llega como True, pero dado que la condición que genera este evento no ocurre aquí, dejarlo sin modificar no tiene ningún efecto observable.

Ejemplo


procedure OnSendBufferFull(Connection: TsgcWSConnection; const QueueSize: Integer;
  var DropMessage: Boolean);
begin
  WriteLn('#slow consumer ' + Connection.Guid + ': ' + IntToStr(QueueSize) + ' messages queued');
end;

Volver a Eventos