```php
void Connection::close(mixed $data = '')

Ferme la connexion de manière sécurisée et déclenche le rappel onClose de la connexion.

Bien que le protocole udp soit sans connexion, l'objet AsyncUdpConnection correspondant reste en mémoire. Il est nécessaire d'appeler la méthode close pour libérer l'objet de connexion udp correspondant ; sinon, cet objet de connexion udp restera en mémoire, entraînant une fuite de mémoire.

Paramètres

$data

Paramètre facultatif, les données à envoyer (si un protocole est spécifié, la méthode encode du protocole sera automatiquement appelée pour empaqueter les données $data), la connexion sera fermée après l'envoi des données, puis le rappel onClose sera déclenché.

La taille des données ne doit pas dépasser 65507 octets, sinon l'envoi échouera.

Exemple

use Workerman\Worker;
use Workerman\Timer;
use Workerman\Connection\AsyncUdpConnection;
use Workerman\Connection\UdpConnection;
require_once __DIR__ . '/vendor/autoload.php';

$worker = new Worker('udp://0.0.0.0:1234');
$worker->onWorkerStart = function(){
    // Démarrer un client udp après 1 seconde, en se connectant au port 1234 et en envoyant la chaîne hi
    Timer::add(1, function(){
        $udp_connection = new AsyncUdpConnection('udp://127.0.0.1:1234');
        $udp_connection->onConnect = function(AsyncUdpConnection $udp_connection){
            $udp_connection->send('hi');
        };
        $udp_connection->onMessage = function(AsyncUdpConnection $udp_connection, $data){
            // Recevoir les données hello renvoyées par le serveur
            echo "recv $data\r\n";
            // Fermer la connexion
            $udp_connection->close();
        };
        $udp_connection->connect();
    }, null, false);
};
$worker->onMessage = function(UdpConnection $connection, $data)
{
    // Recevoir les données envoyées par le client AsyncUdpConnection, et renvoyer la chaîne hello
    $connection->send("hello");
};
Worker::runAll();             

Après exécution, imprime quelque chose comme :

recv hello