public async Task <ISocketClient> CreateClient()
        {
            var socket = await _listener.AcceptAsync();

            if (!CanAccept(socket))
            {
                socket.Dispose();
                return(null);
            }
            _cluster.Add(socket);
            return(socket);
        }