diff --git a/src/JT808.DotNetty.sln b/src/JT808.DotNetty.sln index 906af01..f173c44 100644 --- a/src/JT808.DotNetty.sln +++ b/src/JT808.DotNetty.sln @@ -5,7 +5,7 @@ VisualStudioVersion = 15.0.28010.2016 MinimumVisualStudioVersion = 10.0.40219.1 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JT808.DotNetty", "JT808.DotNetty\JT808.DotNetty.csproj", "{80C7F67E-6B7C-4178-8726-ADD3695622DD}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "JT808.DotNetty.Hosting", "JT808.DotNetty.Hosting\JT808.DotNetty.Hosting.csproj", "{46772BD5-4132-48A7-856B-11D658F7ADDB}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JT808.DotNetty.Hosting", "JT808.DotNetty.Hosting\JT808.DotNetty.Hosting.csproj", "{46772BD5-4132-48A7-856B-11D658F7ADDB}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution diff --git a/src/JT808.DotNetty/Handlers/JT808ServerHandler.cs b/src/JT808.DotNetty/Handlers/JT808ServerHandler.cs index 0819111..2598e4a 100644 --- a/src/JT808.DotNetty/Handlers/JT808ServerHandler.cs +++ b/src/JT808.DotNetty/Handlers/JT808ServerHandler.cs @@ -31,7 +31,7 @@ namespace JT808.DotNetty.Handlers JT808Response jT808Package = handlerFunc(new JT808Request(msg)); if (jT808Package != null) { - ctx.WriteAndFlushAsync(Unpooled.WrappedBuffer(JT808Serializer.Serialize(jT808Package.Package))); + ctx.WriteAndFlushAsync(Unpooled.WrappedBuffer(JT808Serializer.Serialize(jT808Package.Package, jT808Package.MinBufferSize))); } } } diff --git a/src/JT808.DotNetty/JT808MsgIdHandlerBase.cs b/src/JT808.DotNetty/JT808MsgIdHandlerBase.cs index db571c9..5649382 100644 --- a/src/JT808.DotNetty/JT808MsgIdHandlerBase.cs +++ b/src/JT808.DotNetty/JT808MsgIdHandlerBase.cs @@ -1,4 +1,5 @@ using System; +using System.Collections; using System.Collections.Generic; using System.Text; using DotNetty.Transport.Channels; @@ -36,6 +37,7 @@ namespace JT808.DotNetty {JT808MsgId.定位数据批量上传,Msg0x0704 }, {JT808MsgId.数据上行透传,Msg0x0900 } }; + } public Dictionary> HandlerDict { get; } diff --git a/src/JT808.DotNetty/Metadata/JT808Response.cs b/src/JT808.DotNetty/Metadata/JT808Response.cs index ff8c6ff..a40ef63 100644 --- a/src/JT808.DotNetty/Metadata/JT808Response.cs +++ b/src/JT808.DotNetty/Metadata/JT808Response.cs @@ -8,14 +8,20 @@ namespace JT808.DotNetty.Metadata public class JT808Response { public JT808Package Package { get; set; } + /// + /// 根据实际情况适当调整包的大小 + /// + public int MinBufferSize { get; set; } public JT808Response() { } - public JT808Response(JT808Package package) + + public JT808Response(JT808Package package, int minBufferSize = 1024) { Package = package; + MinBufferSize = minBufferSize; } } } \ No newline at end of file