summaryrefslogtreecommitdiff
path: root/CSharp/Ivy/IvyPPC/IvyClient.cs
diff options
context:
space:
mode:
Diffstat (limited to 'CSharp/Ivy/IvyPPC/IvyClient.cs')
-rw-r--r--CSharp/Ivy/IvyPPC/IvyClient.cs11
1 files changed, 7 insertions, 4 deletions
diff --git a/CSharp/Ivy/IvyPPC/IvyClient.cs b/CSharp/Ivy/IvyPPC/IvyClient.cs
index eabdfb1..3d541d0 100644
--- a/CSharp/Ivy/IvyPPC/IvyClient.cs
+++ b/CSharp/Ivy/IvyPPC/IvyClient.cs
@@ -228,6 +228,7 @@ namespace IvyBus
stopListening();
// bus.clientDisconnect(this);
socket.Close(); // should I also close in and out ?
+ socket = null;
}
/// <summary> sends the substrings of a message to the peer for each matching regexp.
@@ -262,10 +263,12 @@ namespace IvyBus
clientThread = null;
// Tell newThread to go to sleep.
running = false;
- t.Interrupt();
- // Wait for newThread to end.
- t.Join();
-
+ if ( Thread.CurrentThread != t )
+ {
+ t.Interrupt();
+ // Wait for newThread to end.
+ t.Join();
+ }
}
/// <summary> compares two peers the id is the couple (host,service port).