diff --git a/SocketStudy/PComm/PClient.cs b/SocketStudy/PComm/PClient.cs index 7ab6bf8..9a871d5 100644 --- a/SocketStudy/PComm/PClient.cs +++ b/SocketStudy/PComm/PClient.cs @@ -15,7 +15,8 @@ namespace PComm { 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 event ClientReceivedHandler OnReceived; @@ -158,8 +159,9 @@ namespace PComm socket.Receive(sizeBuff, sizeBuff.Length, SocketFlags.None); int dataSize = BitConverter.ToInt32(sizeBuff, 0); - // ready to receive data; - Thread.Sleep(100); + // if data size is large, ready to receive data; + if (dataSize >= LARGE_DATA_SIZE_THRESHOLD) + Thread.Sleep(100); using (MemoryStream ms = new MemoryStream()) {