public void Stop(Socks5Worker worker) { var udpID = worker.udpID; tcpWorkers.TryRemove(worker.id, out worker); if (!string.IsNullOrEmpty(udpID)) { udpWorkers.TryRemove(udpID, out worker); } }
private void TCPAcceptClent(IAsyncResult result) { try { var client = tcpS.EndAcceptTcpClient(result); var worker = new Socks5Worker(this, client); tcpWorkers.TryAdd(worker.id, worker); worker.Start(); TCPAcceptLoop(); }catch { } }
public void UDPJoin(Socks5Worker worker) { udpWorkers.TryAdd(worker.udpID, worker); }