Time Server : TcpListener « Network « C# / CSharp Tutorial






using System.Net.Sockets;
using System.IO;
using System;
using System.Threading;

public class TimeServer {
    public static void Main() {
        TcpListener server = new TcpListener(55555);
        server.Start();
        Console.WriteLine("Waiting for connections");
        while (true) {
            Socket client = server.AcceptSocket();
            Console.WriteLine("New connection detected on " + client.Handle);
            ClientHandler ch = new ClientHandler(client);
        }
    }
}
class ClientHandler {
    private Socket client;

    public ClientHandler(Socket client) {
        this.client = client;
        Thread clientThread = new Thread(new ThreadStart(ClientSession));
        clientThread.Start();
    }

    public void ClientSession() {
        NetworkStream netStream = new NetworkStream(client);
        BinaryWriter timeOut = new BinaryWriter(netStream);
        String time = DateTime.Now.ToString();
        timeOut.Write(time);
        timeOut.Close();
        netStream.Close();
        client.Close();
    }
}








33.8.TcpListener
33.8.1.Listening for sockets
33.8.2.TcpListener Sample
33.8.3.Create a Socket server from TcpListener
33.8.4.Use NetworkStream to write to a client
33.8.5.Use TcpListener to create a Tcp server
33.8.6.Create BinaryWriter and BinaryReader from TcpListener
33.8.7.Time Server
33.8.8.Asynch Network Server