public async Task Start(string address, int port) { try { await Stop(); Server = new Server { Services = { ProxyService.BindService(this) }, Ports = { new ServerPort(address, port, ServerCredentials.Insecure) } }; Server.Start(); SetListening(address, port); OnStart(address, port); } catch { Server = null; ResetListening(); throw; } }