2010-03-02 24 views
1

J'ai écrit un serveur UDP très simple en utilisant Netty - il se lie volontiers et accepte les messages, mais je n'arrive pas à résoudre le problème. Est-ce que je manque quelque chose ou est-ce que Netty n'expose pas les API nécessaires pour dissocier un serveur?Fermeture d'un serveur Netty UDP

Modifier

Voici le code que je utilise pour lier le serveur:

DatagramChannelFactory f = new NioDatagramChannelFactory(Executors.newCachedThreadPool()); 
ConnectionlessBootstrap b = new ConnectionlessBootstrap(f); 

ChannelPipeline p = b.getPipeline(); 
p.addLast("encoder", new StringEncoder()); 
p.addLast("decoder", new StringDecoder()); 
p.addLast("logic", this); 

chan = b.bind(new InetSocketAddress(port)); 

Répondre

6

Netty offre de nombreux points d'entrée pour la mise en place d'un serveur, je ne sais pas lequel vous » J'ai utilisé.

Vous devriez pouvoir simplement .unbind (ou .close) le Channel vous revenez de ServerBootstrap.bind

+1

J'ai modifié la question de montrer le code que je utilise - semble comme .close() fait exactement ce que je cherche. – jwoolard

+0

Avec UDP, il devrait être ConnectionlessBootstrap et non ServerBootstrap (qui est pour TCP). – gsimard