From f01a43d451cef3d1ec4e7069c0ca6ddb395d5e83 Mon Sep 17 00:00:00 2001 From: syneffort Date: Wed, 16 Nov 2022 17:26:16 +0900 Subject: [PATCH] large data receive threshold --- SocketStudy/PComm/PClient.cs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) 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()) {