public void Start() { listener = new TcpListener(System.Net.IPAddress.Any, port); listener.Start(8); taskq = new ThreadedTaskQueue(workerThreads + 1); taskq.PushTask(AcceptConnections); }
void AcceptConnections() { while (true) { try { var sock = listener.AcceptSocket(); taskq.PushTask(() => ServeHTTP(sock)); } catch (SocketException) { break; } } }