pauseRecv
Descripción:
void Connection::pauseRecv(void)
Hace que la conexión actual deje de recibir datos. La función de retorno de llamada onMessage de esta conexión no se activará. Este método es muy útil para el control del flujo de carga.
Parámetros
Sin parámetros
Ejemplo
use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';
$worker = new Worker('websocket://0.0.0.0:8484');
$worker->onConnect = function($connection)
{
// Se agrega dinámicamente una propiedad al objeto connection para guardar cuántas solicitudes ha enviado la conexión actual
$connection->messageCount = 0;
};
$worker->onMessage = function(TcpConnection $connection, $data)
{
// Después de que cada conexión recibe 100 solicitudes, ya no se recibirán más datos
$limit = 100;
if(++$connection->messageCount > $limit)
{
$connection->pauseRecv();
}
};
// Ejecutar el worker
Worker::runAll();
Ver también
void Connection::resumeRecv(void) Restaura el objeto de conexión correspondiente para recibir datos.