В настоящее время я делаю что-то вроде этого:
public void StartListening()
{
if (!isListening)
{
Task.Factory.StartNew(ListenForClients);
isListening = true;
}
}
public void StopListening()
{
if (isListening)
{
tcpListener.Stop();
isListening = false;
}
}
Нет ли в TcpListener метода или свойства, чтобы определить, начал ли TcpListener прослушивание (например, TcpListener.Start ( ) назывался)? Не могу получить доступ к TcpListener.Server, потому что, если он не запущен, он еще не был создан. Даже если бы я мог получить к нему доступ, я не уверен, что даже он содержит свойство Listening.
Это действительно лучший способ?