public void Start(TcpMapClientWorker worker, UdpClient udp, string localnat) { _udp = udp; _worker = worker; _localnat = localnat; UDPServerListener listener = new UDPServerListener(new UDPS(udp), delegate(Stream stream, IPEndPoint remote) { _lastconnect = remote; _ = HandleStreamAsync(stream, remote); }); }
static TcpMapClientWorker AddStartClient(TcpMapClient client) { var conn = new TcpMapClientWorker() { Client = client }; lock (_clients) _clients.Add(conn); if (!client.IsDisabled) { conn.StartWork(); } return(conn); }
static public void ReAddClient(TcpMapClient client) { string jsonfilepath = Path.Combine(DataFolder, "TcpMapClient_" + client.Id + ".json"); File.WriteAllText(jsonfilepath, JsonSerializer.Serialize(client)); TcpMapClientWorker clientWorker = null; lock (_clients) { clientWorker = _clients.Where(v => v.Client.Id == client.Id).FirstOrDefault(); if (clientWorker != null) { _clients.Remove(clientWorker); } } if (clientWorker != null) { clientWorker.Stop(); } AddStartClient(client); }