From d1c3b2ad50ed03edcdde7c0385ac89e01cf8389a Mon Sep 17 00:00:00 2001 From: AK2806 <18268291381@163.com> Date: Thu, 23 Aug 2018 21:01:25 +0800 Subject: [PATCH 1/5] Add method TeardownService() & Add try catch block Add service close method TeardownService(), and add try catch block on handling message in NetworkService --- Networkf/NetworkService.cs | 35 ++++++++++++++++++++++++----------- 1 file changed, 24 insertions(+), 11 deletions(-) diff --git a/Networkf/NetworkService.cs b/Networkf/NetworkService.cs index c7f0285..1b56821 100644 --- a/Networkf/NetworkService.cs +++ b/Networkf/NetworkService.cs @@ -86,21 +86,34 @@ public void MessageListener() { break; } - if (parseMessage != null) { - int messageI = KLengthFieldSize; - var message = parseMessage(bufferRev, ref messageI); - if (messageI != i - KCrc32FieldSize) { - Log("\t\terror: message used {0}, expecting {1}", messageI, i - KCrc32FieldSize); - break; - } - Log("\t\treceived message type {0}", message.type); - - if (OnMessageReceived != null) { - OnMessageReceived(id, message); + try { + if (parseMessage != null) { + int messageI = KLengthFieldSize; + var message = parseMessage(bufferRev, ref messageI); + if (messageI != i - KCrc32FieldSize) { + Log("\t\terror: message used {0}, expecting {1}", messageI, i - KCrc32FieldSize); + break; + } + Log("\t\treceived message type {0}", message.type); + + if (OnMessageReceived != null) { + OnMessageReceived(id, message); + } } + } catch (System.Exception e) { + Log(e.Message); + break; } + } + TeardownService(); + } + + public void TeardownService() { + socket.Shutdown(SocketShutdown.Both); + socket.Close(); + if (OnServiceTeardown != null) { OnServiceTeardown(); } From 32ac113fc24935e296cc0d5cd4dcdf868a03cc4d Mon Sep 17 00:00:00 2001 From: AK2806 <18268291381@163.com> Date: Sat, 25 Aug 2018 19:07:55 +0800 Subject: [PATCH 2/5] Revert "Add method TeardownService() & Add try catch block" This reverts commit d1c3b2ad50ed03edcdde7c0385ac89e01cf8389a. --- Networkf/NetworkService.cs | 35 +++++++++++------------------------ 1 file changed, 11 insertions(+), 24 deletions(-) diff --git a/Networkf/NetworkService.cs b/Networkf/NetworkService.cs index 1b56821..c7f0285 100644 --- a/Networkf/NetworkService.cs +++ b/Networkf/NetworkService.cs @@ -86,34 +86,21 @@ public void MessageListener() { break; } - try { - if (parseMessage != null) { - int messageI = KLengthFieldSize; - var message = parseMessage(bufferRev, ref messageI); - if (messageI != i - KCrc32FieldSize) { - Log("\t\terror: message used {0}, expecting {1}", messageI, i - KCrc32FieldSize); - break; - } - Log("\t\treceived message type {0}", message.type); - - if (OnMessageReceived != null) { - OnMessageReceived(id, message); - } + if (parseMessage != null) { + int messageI = KLengthFieldSize; + var message = parseMessage(bufferRev, ref messageI); + if (messageI != i - KCrc32FieldSize) { + Log("\t\terror: message used {0}, expecting {1}", messageI, i - KCrc32FieldSize); + break; + } + Log("\t\treceived message type {0}", message.type); + + if (OnMessageReceived != null) { + OnMessageReceived(id, message); } - } catch (System.Exception e) { - Log(e.Message); - break; } - } - TeardownService(); - } - - public void TeardownService() { - socket.Shutdown(SocketShutdown.Both); - socket.Close(); - if (OnServiceTeardown != null) { OnServiceTeardown(); } From 5e645797a5b4329338e0d2249da4fed889513e26 Mon Sep 17 00:00:00 2001 From: AK2806 <18268291381@163.com> Date: Sat, 25 Aug 2018 19:09:36 +0800 Subject: [PATCH 3/5] Modify buffer size to 4KB Modify buffer size to 4KB --- Networkf/NetworkService.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Networkf/NetworkService.cs b/Networkf/NetworkService.cs index c7f0285..1ed1bef 100644 --- a/Networkf/NetworkService.cs +++ b/Networkf/NetworkService.cs @@ -13,7 +13,7 @@ static void Log(string format, params object[] args) { Log(string.Format(format, args)); } - public const int KBufferSize = 2048, KLengthFieldSize = 2, KCrc32FieldSize = 4, KContentMaxSize = KBufferSize - KLengthFieldSize - KCrc32FieldSize; + public const int KBufferSize = 4096, KLengthFieldSize = 2, KCrc32FieldSize = 4, KContentMaxSize = KBufferSize - KLengthFieldSize - KCrc32FieldSize; public ParseMessageDelegate parseMessage; public readonly int id; From 4719970f6c654b2c03ac2ccab1c656ec2dc8f997 Mon Sep 17 00:00:00 2001 From: AK2806 <18268291381@163.com> Date: Sat, 25 Aug 2018 19:10:43 +0800 Subject: [PATCH 4/5] Revert "Modify buffer size to 4KB" This reverts commit 5e645797a5b4329338e0d2249da4fed889513e26. --- Networkf/NetworkService.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Networkf/NetworkService.cs b/Networkf/NetworkService.cs index 1ed1bef..c7f0285 100644 --- a/Networkf/NetworkService.cs +++ b/Networkf/NetworkService.cs @@ -13,7 +13,7 @@ static void Log(string format, params object[] args) { Log(string.Format(format, args)); } - public const int KBufferSize = 4096, KLengthFieldSize = 2, KCrc32FieldSize = 4, KContentMaxSize = KBufferSize - KLengthFieldSize - KCrc32FieldSize; + public const int KBufferSize = 2048, KLengthFieldSize = 2, KCrc32FieldSize = 4, KContentMaxSize = KBufferSize - KLengthFieldSize - KCrc32FieldSize; public ParseMessageDelegate parseMessage; public readonly int id; From 0336af9d34ce4858069354831f68708fd5c3253e Mon Sep 17 00:00:00 2001 From: AK2806 <18268291381@163.com> Date: Sat, 25 Aug 2018 19:12:50 +0800 Subject: [PATCH 5/5] Modify buffer size to 4KB --- Networkf/NetworkService.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Networkf/NetworkService.cs b/Networkf/NetworkService.cs index c7f0285..1ed1bef 100644 --- a/Networkf/NetworkService.cs +++ b/Networkf/NetworkService.cs @@ -13,7 +13,7 @@ static void Log(string format, params object[] args) { Log(string.Format(format, args)); } - public const int KBufferSize = 2048, KLengthFieldSize = 2, KCrc32FieldSize = 4, KContentMaxSize = KBufferSize - KLengthFieldSize - KCrc32FieldSize; + public const int KBufferSize = 4096, KLengthFieldSize = 2, KCrc32FieldSize = 4, KContentMaxSize = KBufferSize - KLengthFieldSize - KCrc32FieldSize; public ParseMessageDelegate parseMessage; public readonly int id;