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 @@
-
-
+
+