Start new thread for each client : ServerSocket « Network Protocol « Java





Start new thread for each client

   

import java.io.IOException;
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;

public class Main {
  public static void main(String args[]) throws Exception {
    ServerSocket ssock = new ServerSocket(1234);
    while (true) {
      Socket sock = ssock.accept();
      new SocketThread(sock).start();
    }
  }
}

class SocketThread extends Thread {
  Socket csocket;

  public SocketThread(Socket csocket) {
    this.csocket = csocket;
  }

  public void run() {
    try {
      PrintStream pstream = new PrintStream(csocket.getOutputStream());
      for (int i = 10; i >= 0; i--) {
        pstream.println(i);
      }
      pstream.close();
      csocket.close();
    } catch (IOException e) {
      System.out.println(e);
    }
  }
}

   
    
    
  










Related examples in the same category

1.Data server
2.Object server
3.Compressed socket
4.String value based server
5.Get internet address from connected socket client
6.BufferedReader for ServerSocket
7.ServerSocket per Socket
8.Write number to client
9.Read and write with ServerSocket
10.Threaded Server with ServerSocket
11.A multithreaded Socket Server
12.Get IP address from NetworkInterface and create server socket
13.Manages asynchonous HTTP GET downloads and demonstrates non-blocking I/O with SocketChannel and Selector
14.A very simple Web server. When it receives a HTTP request it sends the request back as the reply.
15.Print stream server
16.Zip server socket
17.implements a multithreaded server that listens to port 8189 and echoes back all client input.
18.This program implements a simple server that listens to port 8189 and echoes back all client input.