Skip to content

Instantly share code, notes, and snippets.

@alexandrebl
Created March 15, 2018 23:18
Show Gist options
  • Select an option

  • Save alexandrebl/82eb65b308c12852346996f7c2f3d5f0 to your computer and use it in GitHub Desktop.

Select an option

Save alexandrebl/82eb65b308c12852346996f7c2f3d5f0 to your computer and use it in GitHub Desktop.
using System;
using System.IO;
using System.Net;
using System.Net.Sockets;
namespace EchoServerSocket {
internal class Program {
private static void Main(string[] args) {
while (true) {
var quit = false;
var port = 5000;
if (args.Length > 0) port = int.Parse(args[0]);
var myListner = new TcpListener(new IPAddress(0x00000000), port);
myListner.Start();
Console.WriteLine($"{DateTime.UtcNow:o} - Aguardando conexão na porta {port}");
var mySocket = myListner.AcceptSocket();
Console.WriteLine($"{DateTime.UtcNow:o} -Cliente conectou");
var myStream = new NetworkStream(mySocket);
var reader = new StreamReader(myStream);
var writer = new StreamWriter(myStream) { AutoFlush = true };
writer.WriteLine($"{DateTime.UtcNow:o} -Server started on port 5000");
while (!quit) {
var text = reader.ReadLine();
if (text != null && text.ToLower() == "quit") {
quit = true;
}
Console.WriteLine($"{DateTime.UtcNow:o} - received from cliente : {text}");
writer.WriteLine($"{DateTime.UtcNow:o} - echo server send: " + text);
}
myStream.Close();
mySocket.Close();
myListner.Stop();
Console.WriteLine("Cliente desconectou");
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment