void SendProcessor()
{
MemoryStream ms = null;
try
{
do
{
mreSender.WaitOne();
if (!Abort)
{
if (ServerStream != null)
{
while (SendQueue.Count > 0)
{
lock (SendQueue)
{
ms = SendQueue.Dequeue();
}
if (ms != null)
{
ms.Position = 0;
ms.CopyTo(ServerStream);
}
//byte[] buff = SendQueue.Dequeue();
//if (buff != null)
//{
// ServerStream.Write(buff, 0, buff.Length);
//}
}
}
}
if (!Abort)
{
mreSender.Reset();
}
} while (!Abort);
}
catch (ThreadAbortException)
{
}
catch (SocketException e)
{
RaiseExceptionEncountered(e);
}
finally
{
if (ms != null)
{
ms.Dispose();
}
}
}