| | |
| | | /// </remarks> |
| | | /// <param name="cancellationToken">取消令牌</param> |
| | | /// <returns>启动任务</returns> |
| | | public Task StartAsync(CancellationToken cancellationToken) |
| | | public async Task StartAsync(CancellationToken cancellationToken) |
| | | { |
| | | if (IsRunning || !_options.Enabled) |
| | | { |
| | | return Task.CompletedTask; |
| | | return; |
| | | } |
| | | |
| | | // 解析监听地址 |
| | |
| | | { |
| | | ipAddress = parsedAddress; |
| | | } |
| | | |
| | | await Task.Delay(5000); |
| | | |
| | | // 创建监听器 |
| | | _listener = new TcpListener(ipAddress, _options.Port); |
| | |
| | | // 启动客户端监控任务(检查空闲超时) |
| | | _monitorTask = Task.Run(() => MonitorClientsAsync(_cts.Token)); |
| | | |
| | | return Task.CompletedTask; |
| | | return; |
| | | } |
| | | |
| | | /// <summary> |