I am using Lidgren in Monogame.
There is a possibility that a player would want to host a game, then exits the lobby, and wants to host again. However, when I do this in my code, the following exception is raised: System.Net.Sockets.SocketException: ‘Only one usage of each socket address (protocol/network address/port) is normally permitted’
// initializing the server NetPeerConfiguration _config = new NetPeerConfiguration("some app id"); // code to enable certain messages. _server = new NetServer(_config); _server.Start();
// cleaning up the server instance _server.Shutdown("server shutdown"); _server = null;
The code crashes at
_server.Start() with binding the socket.(
How can I clean the server/socket up so that I can create a new instance of the server a second time around?
The cause of this is an improper shutdown of the previous server's instance meaning the port is still in use by that instance. Seems to have been a bug, the internal cleanup didn't work properly https://github.com/lidgren/lidgren-network-gen3/issues/94 https://github.com/lidgren/lidgren-network-gen3/issues/94#issuecomment-369561026 however it was fixed so be sure to have the latest version of lidgren-network https://github.com/RevoluPowered/lidgren-network/tree/feature/socket-overhaul
you can use
_server.Socket.Close(); just to be sure the socket closes before starting another server or instance.
Answered by Thompson sparta on October 22, 2020
0 Asked on February 3, 2021 by abdelhalim
3 Asked on February 2, 2021 by webdesignnoob
1 Asked on February 2, 2021 by daniu
1 Asked on February 2, 2021 by gaston-fassi-lavalle
2 Asked on February 2, 2021 by dany952
1 Asked on February 2, 2021 by jsouza
2 Asked on February 2, 2021 by mnu-nasir
5 Asked on February 2, 2021
0 Asked on February 1, 2021 by harsh-dhamecha
3 Asked on February 1, 2021 by umar-zahid
2 Asked on February 1, 2021 by jordan-ford
2 Asked on February 1, 2021
1 Asked on February 1, 2021 by radosaw-hryniewicki
1 Asked on February 1, 2021 by caner-akmak
1 Asked on February 1, 2021 by jae-young-lee
Get help from others!