Fix issue when stopping server

This commit is contained in:
Christian Kratky
2017-07-15 18:36:33 +02:00
parent 2193281c6a
commit 886b2d6b42
4 changed files with 9 additions and 3 deletions
@@ -63,6 +63,7 @@ namespace MQTTnet.Implementations
{
_isRunning = false;
_cancellationTokenSource?.Cancel(false);
_cancellationTokenSource?.Dispose();
_cancellationTokenSource = null;
@@ -88,7 +89,7 @@ namespace MQTTnet.Implementations
var clientAdapter = new MqttChannelCommunicationAdapter(new MqttTcpChannel(clientSocket, null), new DefaultMqttV311PacketSerializer());
ClientConnected?.Invoke(this, new MqttClientConnectedEventArgs(clientSocket.RemoteEndPoint.ToString(), clientAdapter));
}
catch (Exception exception)
catch (Exception exception) when (!(exception is ObjectDisposedException))
{
MqttTrace.Error(nameof(MqttServerAdapter), exception, "Error while acceping connection at default endpoint.");
}
@@ -61,6 +61,7 @@ namespace MQTTnet.Implementations
{
_isRunning = false;
_cancellationTokenSource?.Cancel(false);
_cancellationTokenSource?.Dispose();
_cancellationTokenSource = null;
+4 -1
View File
@@ -185,7 +185,10 @@ namespace MQTTnet.Core.Client
}
finally
{
_cancellationTokenSource?.Cancel();
_cancellationTokenSource?.Cancel(false);
_cancellationTokenSource?.Dispose();
_cancellationTokenSource = null;
IsConnected = false;
Disconnected?.Invoke(this, EventArgs.Empty);
}
+2 -1
View File
@@ -59,7 +59,8 @@ namespace MQTTnet.Core.Server
public void Stop()
{
_cancellationTokenSource?.Cancel();
_cancellationTokenSource?.Cancel(false);
_cancellationTokenSource?.Dispose();
_cancellationTokenSource = null;
foreach (var adapter in _adapters)