private void ProcessBuffer()
{
if (!Reading)
return;
if (m_processingBuffer)
{
// Increment the number of times we should process messages
m_processingQueue++;
return;
}
m_processingBuffer = true;
int _total = Math.Max(1, m_processingQueue);
for (int i = 0; i < _total; i++)
{
if (!Reading)
return;
ProcessChunks();
}
if (m_processingQueue > 0)
m_processingQueue -= _total;
m_processingBuffer = false;
}