public void Close() { _socket.Close(CloseStatusCode.Normal); _webStockHeadBeatTimer?.WaitToStop(); _webStockHeadBeatTimer = null; }
//public ResetbaleTimer WebStockHeadBeatTimer //{ // get => _webStockHeadBeatTimer; // set // { // _webStockHeadBeatTimer = value; // _webStockHeadBeatTimer.Elapsed += (sender, e) => // { // if (IsConnected) // { // _socket.Ping(); // _logger.Info($"WebStocket Ping, at {DateTime.Now}"); // } // }; // } //} public WebSocketChannel(WebSocket socket) { _socket = socket; _webStockHeadBeatTimer = new ResetbaleTimer(_heartbeatInterval); _webStockHeadBeatTimer.Elapsed += (sender, e) => { if (IsConnected) { _socket.Ping(); _logger.Info($"WebStocket Ping, at {DateTime.Now}"); } }; _webStockHeadBeatTimer.Start(); }