test3 - memorystream retry

main
syneffort 2 years ago
parent b1cbed9c78
commit 166f7606a5
  1. 55
      SocketStudy/PComm/PClient.cs

@ -184,47 +184,32 @@ namespace PComm
if (dataSize >= BUFF_SIZE)
Thread.Sleep(100);
List<byte> receivedData = new List<byte>(dataSize);
while (dataSize > 0)
byte[] receivedData = new byte[dataSize];
using (MemoryStream ms = new MemoryStream(dataSize))
{
byte[] buff;
if (dataSize < BUFF_SIZE)
buff = new byte[dataSize];
else
buff = new byte[BUFF_SIZE];
int receiveSize = socket.Receive(buff, buff.Length, SocketFlags.None);
receivedData.AddRange(buff);
dataSize -= receiveSize;
while (dataSize > 0)
{
byte[] buff;
if (dataSize < BUFF_SIZE)
buff = new byte[dataSize];
else
buff = new byte[BUFF_SIZE];
int receiveSize = socket.Receive(buff, buff.Length, SocketFlags.None);
// Thread.Sleep(1);
ms.Write(buff, 0, receiveSize);
dataSize -= receiveSize;
}
receivedData = ms.ToArray();
}
//using (MemoryStream ms = new MemoryStream(dataSize))
//{
// while (dataSize > 0)
// {
// byte[] buff;
// if (dataSize < BUFF_SIZE)
// buff = new byte[dataSize];
// else
// buff = new byte[BUFF_SIZE];
// int receiveSize = socket.Receive(buff, buff.Length, SocketFlags.None);
// // Thread.Sleep(1);
// ms.Write(buff, 0, buff.Length);
// dataSize -= receiveSize;
// }
// receivedData = ms.ToArray();
//}
byte[] data;
if (isCompressed)
data = PUtil.DecompressBytes(receivedData.ToArray());
data = PUtil.DecompressBytes(receivedData);
else
data = receivedData.ToArray();
data = receivedData;
if (OnReceived != null)
OnReceived(this, dataType, data);

Loading…
Cancel
Save