Presize MemoryStream when possible.

Also use GetBuffer when we know we have presized the stream to the exact required size to prevent a needless copy.
This commit is contained in:
RoosterDragon
2017-12-07 21:28:43 +00:00
committed by abcdefg30
parent 5d8c9a560a
commit ca01a1f186
7 changed files with 19 additions and 13 deletions

View File

@@ -77,10 +77,10 @@ namespace OpenRA.Network
public virtual void SendSync(int frame, byte[] syncData)
{
var ms = new MemoryStream();
var ms = new MemoryStream(4 + syncData.Length);
ms.Write(BitConverter.GetBytes(frame));
ms.Write(syncData);
Send(ms.ToArray());
Send(ms.GetBuffer());
}
protected virtual void Send(byte[] packet)
@@ -197,10 +197,10 @@ namespace OpenRA.Network
public override void SendSync(int frame, byte[] syncData)
{
var ms = new MemoryStream();
var ms = new MemoryStream(4 + syncData.Length);
ms.Write(BitConverter.GetBytes(frame));
ms.Write(syncData);
queuedSyncPackets.Add(ms.ToArray());
queuedSyncPackets.Add(ms.GetBuffer());
}
protected override void Send(byte[] packet)