mirror of https://github.com/quasar/Quasar.git
Merge pull request #489 from Abdullah2993/master
Some minnor fixes in PooledBufferManager
This commit is contained in:
commit
9faec9bb9d
|
@ -1,5 +1,6 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
|
||||
namespace xServer.Core.Networking.Utilities
|
||||
{
|
||||
|
@ -24,8 +25,9 @@ namespace xServer.Core.Networking.Utilities
|
|||
/// <param name="e">The event arguments.</param>
|
||||
protected virtual void OnNewBufferAllocated(EventArgs e)
|
||||
{
|
||||
if (NewBufferAllocated != null)
|
||||
NewBufferAllocated(this, e);
|
||||
var handler = NewBufferAllocated;
|
||||
if (handler != null)
|
||||
handler(this, e);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -38,8 +40,9 @@ namespace xServer.Core.Networking.Utilities
|
|||
/// <param name="e">The event arguments.</param>
|
||||
protected virtual void OnBufferRequested(EventArgs e)
|
||||
{
|
||||
if (BufferRequested != null)
|
||||
BufferRequested(this, e);
|
||||
var handler =BufferRequested;
|
||||
if (handler != null)
|
||||
handler(this, e);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -52,8 +55,9 @@ namespace xServer.Core.Networking.Utilities
|
|||
/// <param name="e">The event arguments.</param>
|
||||
protected virtual void OnBufferReturned(EventArgs e)
|
||||
{
|
||||
if (BufferReturned != null)
|
||||
BufferReturned(this, e);
|
||||
var handler = BufferReturned;
|
||||
if (handler != null)
|
||||
handler(this, e);
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
@ -144,7 +148,7 @@ namespace xServer.Core.Networking.Utilities
|
|||
private byte[] AllocateNewBuffer()
|
||||
{
|
||||
byte[] newBuffer = new byte[_bufferLength];
|
||||
_bufferCount++;
|
||||
Interlocked.Increment(ref _bufferCount);
|
||||
OnNewBufferAllocated(EventArgs.Empty);
|
||||
|
||||
return newBuffer;
|
||||
|
@ -168,12 +172,7 @@ namespace xServer.Core.Networking.Utilities
|
|||
return false;
|
||||
|
||||
if (ClearOnReturn)
|
||||
{
|
||||
for (int i = 0; i < _bufferLength; i++)
|
||||
{
|
||||
buffer[i] = 0;
|
||||
}
|
||||
}
|
||||
Array.Clear(buffer, 0, buffer.Length);
|
||||
|
||||
lock (_buffers)
|
||||
{
|
||||
|
@ -237,9 +236,10 @@ namespace xServer.Core.Networking.Utilities
|
|||
{
|
||||
_buffers.Pop();
|
||||
numRemoved++;
|
||||
_bufferCount--;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return numRemoved;
|
||||
}
|
||||
#endregion
|
||||
|
|
Loading…
Reference in New Issue