TsgcWebSocketProxyServer › Properties › ThreadPool
启用线程池,在代理连接关闭时回收工作线程而不是销毁它们。
property ThreadPool: Boolean read GetThreadPool write SetThreadPool;
False
当 ThreadPool 为 True 时,完成服务下游连接的线程会返回到池中而不是被销毁;它们被标记为非活跃状态,在重用之前不消耗 CPU 周期,这大大降低了短暂连接的成本(这是浏览器驱动的 WebSocket 代理的常见情况)。调整 ThreadPoolOptions(MaxThreads、PoolSize)来控制可以创建多少线程。池仅覆盖下游工作线程;到 Proxy 中定义的服务器的上游链路每个会话使用自己的客户端连接。
oProxy := TsgcWebSocketProxyServer.Create(nil);
oProxy.ThreadPool := true;
oProxy.ThreadPoolOptions.PoolSize := 32;
oProxy.Proxy.Host := 'upstream.example.com';
oProxy.Proxy.Port := 8080;
oProxy.Active := true;