public void WaitForReceive()
{
try
{
lock (_session)
{
if (_session.Socket == null)
return;
if (_receivedBuffer.WritableSize == 0)
_receivedBuffer.Resize(_receivedBuffer.BufferSize * 2);
if (_session.Socket.Connected)
_session.Socket.BeginReceive(_receivedBuffer.Buffer, _receivedBuffer.WrittenBytes, _receivedBuffer.WritableSize, 0, Socket_Read, null);
else
_session.Close(AegisResult.UnknownError);
}
}
catch (Exception)
{
_session.Close(AegisResult.UnknownError);
}
}