private void ShutDownThread()
{
byte counter = 0;
_rsProtoBuf.FinishQueue();
// wait 10 seconds to send all remaining items
while (_rsProtoBuf.ThreadRunning && counter < 10 * 2)
{
System.Diagnostics.Debug.WriteLineIf(DEBUG, "waiting to send remaining items - " + counter);
Thread.Sleep(500);
counter++;
}
_rsProtoBuf.StopThread();
Thread.Sleep(100);
if (!_useProperDisconnect)
{
_rsProtoBuf.BreakConnection();
}
_rsProtoBuf = null;
_rsConnector.Disconnect();
_rsConnector = null;
_connected = false;
_disconnecting = false;
}