Advertisement
Guest User

Untitled

a guest
Nov 15th, 2024
33
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.18 KB | None | 0 0
  1. using System;
  2. using System.Net;
  3. using System.Net.Sockets;
  4. using System.Collections.Generic;
  5. using System.Threading.Tasks;
  6.  
  7. namespace Server.Classes
  8. {
  9.     internal class Connection
  10.     {
  11.         private TcpListener listener;
  12.         private List<Socket> clients;
  13.  
  14.         public Connection()
  15.         {
  16.             listener = new TcpListener(IPAddress.Any, Settings.Connection.Port);
  17.             clients = new List<Socket>();
  18.         }
  19.  
  20.         public event EventHandler onReceived;
  21.         public event EventHandler onConnected;
  22.  
  23.         public void Listen()
  24.         {
  25.             Task.Run(async () => {
  26.                 listener.Start();
  27.  
  28.                 while (true)
  29.                 {
  30.                     try
  31.                     {
  32.                         clients.Add(listener.AcceptSocket());
  33.                         onConnected.Invoke(this, EventArgs.Empty);
  34.                     }
  35.                     catch
  36.                     {
  37.  
  38.                     }
  39.                     await Task.Delay(10);
  40.                 }
  41.             });
  42.         }
  43.  
  44.         public void Dispose()
  45.         {
  46.             listener.Stop();
  47.             clients.Clear();
  48.         }
  49.     }
  50. }
  51.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement