large data receive threshold

main
syneffort 2 years ago
parent 0897afeb92
commit f01a43d451
  1. 8
      SocketStudy/PComm/PClient.cs

@ -15,7 +15,8 @@ namespace PComm
{ {
public class PClient public class PClient
{ {
private readonly int BUFF_SIZE = 1024 * 50; private readonly int BUFF_SIZE = 1000 * 50; // 50kB
private readonly int LARGE_DATA_SIZE_THRESHOLD = 1000000; // 1MB
public delegate void ClientReceivedHandler(PClient sender, PDataType dataType, byte[] data); public delegate void ClientReceivedHandler(PClient sender, PDataType dataType, byte[] data);
public event ClientReceivedHandler OnReceived; public event ClientReceivedHandler OnReceived;
@ -158,8 +159,9 @@ namespace PComm
socket.Receive(sizeBuff, sizeBuff.Length, SocketFlags.None); socket.Receive(sizeBuff, sizeBuff.Length, SocketFlags.None);
int dataSize = BitConverter.ToInt32(sizeBuff, 0); int dataSize = BitConverter.ToInt32(sizeBuff, 0);
// ready to receive data; // if data size is large, ready to receive data;
Thread.Sleep(100); if (dataSize >= LARGE_DATA_SIZE_THRESHOLD)
Thread.Sleep(100);
using (MemoryStream ms = new MemoryStream()) using (MemoryStream ms = new MemoryStream())
{ {

Loading…
Cancel
Save