From 7d9b735caaf15161c72303ba40ad8312375fdbd5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=A5=E6=B1=9D=E6=A3=8B=E8=8C=97?= <505554090@qq.com> Date: Fri, 24 Oct 2025 17:15:51 +0800 Subject: [PATCH 1/8] update(touchsocket):version to 4.0.0-rc.2 --- .../touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj | 4 ++-- .../src/TouchSocketWebApi/TouchSocketWebApi.csproj | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj index 1b9d682382f..af57847b787 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj +++ b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj @@ -10,8 +10,8 @@ - - + + diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj index 9067bb77f51..e78bdb62db6 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj +++ b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj @@ -9,7 +9,7 @@ - - + + From 8e085d39c153f874448c2a13317828373ede9cfd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=A5=E6=B1=9D=E6=A3=8B=E8=8C=97?= <505554090@qq.com> Date: Sun, 26 Oct 2025 22:10:56 +0800 Subject: [PATCH 2/8] update(touchsocket):version to 4.0.0-rc.5 --- .../touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj | 4 ++-- .../src/TouchSocketWebApi/TouchSocketWebApi.csproj | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj index af57847b787..b09d51fff00 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj +++ b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj @@ -10,8 +10,8 @@ - - + + diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj index e78bdb62db6..572563f16bb 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj +++ b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj @@ -9,7 +9,7 @@ - - + + From cc8cbae5401a8c29be59326904c39e10046e50b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=A5=E6=B1=9D=E6=A3=8B=E8=8C=97?= <505554090@qq.com> Date: Thu, 30 Oct 2025 14:05:30 +0800 Subject: [PATCH 3/8] optimize(touchsocket):scheduler --- .../CSharp/touchsocket/src/TouchSocketHttp/Program.cs | 6 ------ .../CSharp/touchsocket/src/TouchSocketWebApi/Program.cs | 6 ------ 2 files changed, 12 deletions(-) diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/Program.cs b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/Program.cs index c54ff87c76e..125284cd970 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/Program.cs +++ b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/Program.cs @@ -15,12 +15,6 @@ private static async Task Main(string[] args) await service.SetupAsync(new TouchSocketConfig() .SetListenIPHosts(port) - .SetNoDelay(true) - .SetTransportOption(options => - { - options.ReceivePipeOptions = TransportOption.CreateSchedulerOptimizedPipeOptions(); - options.SendPipeOptions = TransportOption.CreateSchedulerOptimizedPipeOptions(); - }) .SetMaxCount(1000000) .ConfigureContainer(a => { diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/Program.cs b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/Program.cs index 66d4c955f40..26cdfb935fd 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/Program.cs +++ b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/Program.cs @@ -18,12 +18,6 @@ public static void Main(string[] args) builder.Services.AddServiceHostedService(config => { config.SetListenIPHosts(8080) - .SetNoDelay(true) - .SetTransportOption(options => - { - options.ReceivePipeOptions = TransportOption.CreateSchedulerOptimizedPipeOptions(); - options.SendPipeOptions = TransportOption.CreateSchedulerOptimizedPipeOptions(); - }) .SetMaxCount(1000000) .ConfigureContainer(a => { From 9721dd5e2018712952af036965ccaf9f0938b6d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=A5=E6=B1=9D=E6=A3=8B=E8=8C=97?= <505554090@qq.com> Date: Fri, 31 Oct 2025 13:11:21 +0800 Subject: [PATCH 4/8] Performance (TouchSocketHttp, TouchSocketWebApi): Enable server garbage collection --- .../touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj | 1 + .../touchsocket/src/TouchSocketHttp31/TouchSocketHttp31.csproj | 2 +- .../touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj | 1 + .../src/TouchSocketWebApi31/TouchSocketWebApi31.csproj | 2 +- 4 files changed, 4 insertions(+), 2 deletions(-) diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj index b09d51fff00..e550d0eedb6 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj +++ b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj @@ -5,6 +5,7 @@ enable Exe enable + true dotnet-TouchSocketWebApi-987c185f-10b1-452b-beb6-47d798a5a131 diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketHttp31/TouchSocketHttp31.csproj b/frameworks/CSharp/touchsocket/src/TouchSocketHttp31/TouchSocketHttp31.csproj index 41261ace4f9..8f8a2d69035 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketHttp31/TouchSocketHttp31.csproj +++ b/frameworks/CSharp/touchsocket/src/TouchSocketHttp31/TouchSocketHttp31.csproj @@ -7,8 +7,8 @@ enable true - dotnet-TouchSocketWebApi-987c185f-10b1-455b-beb6-47d798a5a131 true + dotnet-TouchSocketWebApi-987c185f-10b1-455b-beb6-47d798a5a131 diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj index 572563f16bb..0a0fbc559c3 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj +++ b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj @@ -4,6 +4,7 @@ net9.0 enable enable + true dotnet-WorkerService1-19b37b17-6043-4334-ad9a-9e0e3c670da3 diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi31/TouchSocketWebApi31.csproj b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi31/TouchSocketWebApi31.csproj index 80742a45b17..d385bc8caed 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi31/TouchSocketWebApi31.csproj +++ b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi31/TouchSocketWebApi31.csproj @@ -6,8 +6,8 @@ enable true - dotnet-TouchSocketWebApi-987c185f-10b1-452b-beb7-47d798a5a131 true + dotnet-TouchSocketWebApi-987c185f-10b1-452b-beb7-47d798a5a131 From 35e5e5bcc09b42650f5ebcde0a42ed9dc6b1e761 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=A5=E6=B1=9D=E6=A3=8B=E8=8C=97?= <505554090@qq.com> Date: Sat, 1 Nov 2025 09:39:53 +0800 Subject: [PATCH 5/8] update(touchsocket):version to 4.0.0-rc.15 --- .../touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj | 4 ++-- .../src/TouchSocketWebApi/TouchSocketWebApi.csproj | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj index e550d0eedb6..74caaf7a658 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj +++ b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj @@ -11,8 +11,8 @@ - - + + diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj index 0a0fbc559c3..1319cf14650 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj +++ b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj @@ -10,7 +10,7 @@ - - + + From 0606cc399132bc6bb96acff298cbbe6980129564 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=A5=E6=B1=9D=E6=A3=8B=E8=8C=97?= <505554090@qq.com> Date: Mon, 10 Nov 2025 14:39:50 +0800 Subject: [PATCH 6/8] update(touchsocket):version to 4.0.0-rc42 --- frameworks/CSharp/touchsocket/src/TouchSocketHttp/Program.cs | 4 ++++ .../touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj | 4 ++-- .../CSharp/touchsocket/src/TouchSocketWebApi/Program.cs | 4 ++++ .../src/TouchSocketWebApi/TouchSocketWebApi.csproj | 4 ++-- 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/Program.cs b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/Program.cs index 125284cd970..d08469401a0 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/Program.cs +++ b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/Program.cs @@ -16,6 +16,10 @@ private static async Task Main(string[] args) await service.SetupAsync(new TouchSocketConfig() .SetListenIPHosts(port) .SetMaxCount(1000000) + .SetTransportOption(options => + { + options.BufferOnDemand = false; + }) .ConfigureContainer(a => { a.AddConsoleLogger(); diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj index 74caaf7a658..136efe0b201 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj +++ b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj @@ -11,8 +11,8 @@ - - + + diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/Program.cs b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/Program.cs index 26cdfb935fd..71b8bc6a089 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/Program.cs +++ b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/Program.cs @@ -19,6 +19,10 @@ public static void Main(string[] args) { config.SetListenIPHosts(8080) .SetMaxCount(1000000) + .SetTransportOption(options => + { + options.BufferOnDemand = false; + }) .ConfigureContainer(a => { a.AddConsoleLogger(); diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj index 1319cf14650..a6ea669e926 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj +++ b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj @@ -10,7 +10,7 @@ - - + + From a95d6a54efaa4bbc389ed36d36f228527984f2ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=A5=E6=B1=9D=E6=A3=8B=E8=8C=97?= <505554090@qq.com> Date: Tue, 11 Nov 2025 22:32:00 +0800 Subject: [PATCH 7/8] =?UTF-8?q?=E9=87=8D=E6=9E=84(Program):=20=E6=98=BE?= =?UTF-8?q?=E5=BC=8F=E6=8C=87=E5=AE=9A=E5=8F=98=E9=87=8F=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?=E5=B9=B6=E4=BC=98=E5=8C=96=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 显式指定变量类型以提高代码可读性和类型安全性 修改命名空间为 `TouchSocketHttp` 将 `options.BufferOnDemand` 默认值从 `false` 修改为 `true` 调整 `SetTransportOption` 和 `ApiServer` 中的相关代码 --- .../CSharp/touchsocket/src/TouchSocketHttp/Program.cs | 4 ++-- .../CSharp/touchsocket/src/TouchSocketWebApi/Program.cs | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/Program.cs b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/Program.cs index d08469401a0..d77a1b3249d 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/Program.cs +++ b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/Program.cs @@ -10,7 +10,7 @@ public class Program { private static async Task Main(string[] args) { - var port = 8080; + int port = 8080; var service = new MyHttpService(); await service.SetupAsync(new TouchSocketConfig() @@ -18,7 +18,7 @@ await service.SetupAsync(new TouchSocketConfig() .SetMaxCount(1000000) .SetTransportOption(options => { - options.BufferOnDemand = false; + options.BufferOnDemand = true; }) .ConfigureContainer(a => { diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/Program.cs b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/Program.cs index 71b8bc6a089..a7c9e6dcafe 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/Program.cs +++ b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/Program.cs @@ -21,7 +21,7 @@ public static void Main(string[] args) .SetMaxCount(1000000) .SetTransportOption(options => { - options.BufferOnDemand = false; + options.BufferOnDemand = true; }) .ConfigureContainer(a => { @@ -49,7 +49,7 @@ public static void Main(string[] args) }); }); - var host = builder.Build(); + IHost host = builder.Build(); host.Run(); } } @@ -64,7 +64,7 @@ public partial class ApiServer : SingletonRpcServer [WebApi(Method = HttpMethodType.Get)] public async Task Plaintext(IWebApiCallContext callContext) { - var response = callContext.HttpContext.Response; + HttpResponse response = callContext.HttpContext.Response; response.SetStatus(200, "ok"); response.Content = m_contentPlaintext; await response.AnswerAsync().ConfigureAwait(false); From 7dfc4b30637e1f2eedb16708f71d32ca9b9a4581 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=A5=E6=B1=9D=E6=A3=8B=E8=8C=97?= <505554090@qq.com> Date: Tue, 11 Nov 2025 23:20:46 +0800 Subject: [PATCH 8/8] =?UTF-8?q?=E4=BC=98=E5=8C=96(csproj):=20=E5=8D=87?= =?UTF-8?q?=E7=BA=A7TouchSocket=E5=8C=85=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在TouchSocketHttp.csproj和TouchSocketWebApi.csproj中,将TouchSocket.Hosting和TouchSocket.WebApi的包引用版本从4.0.0-rc.42升级到4.0.0-rc.44,以修复错误、提高性能或增加新功能 --- .../touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj | 4 ++-- .../src/TouchSocketWebApi/TouchSocketWebApi.csproj | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj index 136efe0b201..ea6f43327a0 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj +++ b/frameworks/CSharp/touchsocket/src/TouchSocketHttp/TouchSocketHttp.csproj @@ -11,8 +11,8 @@ - - + + diff --git a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj index a6ea669e926..d90651bb648 100644 --- a/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj +++ b/frameworks/CSharp/touchsocket/src/TouchSocketWebApi/TouchSocketWebApi.csproj @@ -10,7 +10,7 @@ - - + +