Click here to Skip to main content
15,892,298 members

UDP Server works once, then won't compile

BrianHamilton asked:

Open original thread
Hi,
I've written a basic UDP client/server app. The client works fine as does the server but as soon as I shut the server down and start it up again, it freezes. C~ gives me the following error message:

"An unhandled exception of type 'System.Net.Sockets.SocketException' occurred in System.dll

Additional information: Only one usage of each socket address (protocol/network address/port) is normally permitted"

The line of code it refers to is
UdpClient udpClient = new UdpClient(8080);


If I reboot my PC it will re-compile and work.

The code is below - I assume as there is no formal shut down for the server, the port is still reserved somehow.

The code for the server is below. Thanks.



public void serverThread()
{
    UdpClient udpClient = new UdpClient(8080);
    while (true)
    {
        IPEndPoint RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);
        Byte[] receiveBytes = udpClient.Receive(ref RemoteIpEndPoint);
        string returnData = Encoding.ASCII.GetString(receiveBytes);
        lbConnections.Items.Add(RemoteIpEndPoint.Address.ToString() + ":" + returnData.ToString());
    }
}
public Form1()
{
    InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
{
    Thread thdUDPServer = new Thread(new ThreadStart(serverThread));
    thdUDPServer.Start();
}
Tags: C# (C# 4.0), UDP, Sockets

Plain Text
ASM
ASP
ASP.NET
BASIC
BAT
C#
C++
COBOL
CoffeeScript
CSS
Dart
dbase
F#
FORTRAN
HTML
Java
Javascript
Kotlin
Lua
MIDL
MSIL
ObjectiveC
Pascal
PERL
PHP
PowerShell
Python
Razor
Ruby
Scala
Shell
SLN
SQL
Swift
T4
Terminal
TypeScript
VB
VBScript
XML
YAML

Preview



When answering a question please:
  1. Read the question carefully.
  2. Understand that English isn't everyone's first language so be lenient of bad spelling and grammar.
  3. If a question is poorly phrased then either ask for clarification, ignore it, or edit the question and fix the problem. Insults are not welcome.
  4. Don't tell someone to read the manual. Chances are they have and don't get it. Provide an answer or move on to the next question.
Let's work to help developers, not make them feel stupid.
Please note that all posts will be submitted under the http://www.codeproject.com/info/cpol10.aspx.



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900