예제 #1
0
        public async Task StartListening(ReWorkServerRole role)
        {
            var cts = new CancellationTokenSource();

            try
            {
                await _transportManager.StartListeningAsync(role, cts.Token);

                await AcceptClientsAsync(cts.Token);
            }
            finally
            {
                cts.Cancel();
                await _transportManager.StopListeningAsync();
            }
        }
 public Task StartListeningAsync(ReWorkServerRole role, CancellationToken ctx)
 {
     _listener = new TcpListener(role.IpAddress, role.Port);
     _listener.Start();
     return(Task.CompletedTask);
 }
예제 #3
0
 public void Start(ReWorkServerRole role)
 {
     Start().StartListening(role).Wait();
 }