DotNet: Using Sockets in C#
- Using TcpListener for creating a TCP server:
using System;
using System.Threading;
using System.Net;
using System.Net.Sockets;
using System.IO;
private Socket connection; // Socket for accepting a connection
private Thread readThread; // Thread for processing incoming messages
private NetworkStream socketStream; // network data stream
private BinaryWriter writer; // facilitates writing to the stream
private BinaryReader reader; // facilitates reading from the stream
readThread = new Thread( new ThreadStart( RunServer ) );
readThread.Start();
public void RunServer()
{
TcpListener listener;
// Step 1: create TcpListenerIPAddress local = IPAddress.Parse( "127.0.0.1" );listener = new TcpListener( local, 50000 );
// Step 2: TcpListener waits for connection requestlistener.Start();
// Step 3: establish connection upon client requestwhile ( true ){
// accept an incoming connectionconnection = listener.AcceptSocket();
// create NetworkStream object associated with socketsocketStream = new NetworkStream( connection );
// create objects for transferring data across streamwriter = new BinaryWriter( socketStream );reader = new BinaryReader( socketStream );
// Step 4: read string data sent from client
// Step 5: close connectionwriter.Close();reader.Close();socketStream.Close();connection.Close();
}
}
No comments:
Post a Comment