Merge pull request #489 from Abdullah2993/master

Some minnor fixes in PooledBufferManager
This commit is contained in:
MaxXor 2016-07-26 21:17:12 +02:00 committed by GitHub
commit 9faec9bb9d
1 changed files with 14 additions and 14 deletions

View File

@ -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,6 +236,7 @@ namespace xServer.Core.Networking.Utilities
{
_buffers.Pop();
numRemoved++;
_bufferCount--;
}
}