Hallo, ich bräuchte mal eure Hilfe.
Hab eine Oberfläche, durch die mal per Button eine Socketserver Starten und stoppen kann.
Der SocketServer läuft in einem Thread.
Hier ein Auszug.
Beim StartServer wird das auchgeführt:
Beim StopServer das:
Beim 2. Start des Server, meckert er rum: Address already in use: JVM_Bind
Versteh schon warum, aber wie kann ich das anders machen?
Hab eine Oberfläche, durch die mal per Button eine Socketserver Starten und stoppen kann.
Der SocketServer läuft in einem Thread.
Hier ein Auszug.
Code:
public void run()
{
try
{
while( !isInterrupted() )
{
while( connectionFailed )
{
if( sSocket == null )
{
sSocket = new ServerSocket( _Port );
}
socket = sSocket.accept();
is = socket.getInputStream();
os = socket.getOutputStream();
connectionFailed = false;
}
//hier ist noch eine "Endlosschleife, die auch auf bestimmtes Byte wartet
...
}
}
catch( IOException e )
{
e.printStackTrace();
}
catch( Exception e )
{
e.printStackTrace();
}
}
}
Beim StartServer wird das auchgeführt:
Code:
server = new ServerThread(Integer.valueOf( jtf_serverPort.getText()));
server.start();
Beim StopServer das:
Code:
server.interrupt();
Beim 2. Start des Server, meckert er rum: Address already in use: JVM_Bind
Versteh schon warum, aber wie kann ich das anders machen?