Lidgren create server instance for a second time results in System.Net.Sockets.SocketException

Stack Overflow Asked by Danahi on October 22, 2020

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’

Relevant code:

// initializing the server
NetPeerConfiguration _config = new NetPeerConfiguration("some app id");
// code to enable certain messages.
_server = new NetServer(_config);

// cleaning up the server instance
_server.Shutdown("server shutdown");
_server = null;

The code crashes at _server.Start() with binding the socket.(m_socket.Bind()).

How can I clean the server/socket up so that I can create a new instance of the server a second time around?

One Answer

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 however it was fixed so be sure to have the latest version of lidgren-network

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

Add your own answers!

Related Questions

SQL Query [Count the result of a query]

0  Asked on February 3, 2021 by abdelhalim


function stops when fetch() fails

2  Asked on February 2, 2021 by uncannyorange


merging lists of dataframes in R effectively

1  Asked on February 2, 2021 by user5813583


The Math behind a tesorflow.tensordot()

0  Asked on February 1, 2021 by harsh-dhamecha


How to check if a word contains one letter from another string

3  Asked on February 1, 2021 by umar-zahid


How to use citeproc-java on Android

1  Asked on February 1, 2021 by hector


Laravel whereHas Filter sub relation

1  Asked on February 1, 2021 by bryant-tang


How to check if list contains dict element with same key

1  Asked on February 1, 2021 by radosaw-hryniewicki


react-navigation nested drawer items

1  Asked on February 1, 2021 by caner-akmak


Add a header to an outgoing request by a filter in WebFlux

1  Asked on February 1, 2021 by jae-young-lee


Ask a Question

Get help from others!

© 2022 All rights reserved. Sites we Love: PCI Database, MenuIva, UKBizDB, Menu Kuliner, Sharing RPP