2
0
黄宗银 преди 1 година
родител
ревизия
b5e8e5de40

+ 1 - 0
gsproxy/gsproxy/00-Startup.bat

@@ -0,0 +1 @@
+@start GsProxy.exe server

BIN
gsproxy/gsproxy/Apq.Web5.dll


BIN
gsproxy/gsproxy/Apq.Web5.pdb


BIN
gsproxy/gsproxy/Apq.dll


BIN
gsproxy/gsproxy/Apq.pdb


+ 249 - 33
gsproxy/gsproxy/Apq.xml

@@ -3524,18 +3524,23 @@
             </summary>
             <returns>是否关闭成功</returns>
         </member>
-        <member name="M:Apq.Net.FleckWebSocketServer.DoSend(System.Collections.Generic.IList{System.Byte},System.Threading.CancellationToken)">
+        <member name="M:Apq.Net.FleckWebSocketServer.DoTask_Send(System.Collections.Generic.IList{System.Byte},System.Threading.CancellationToken)">
             <summary>
             发送数据到客户端(实现)
             </summary>
             <returns>是否发送成功</returns>
         </member>
-        <member name="M:Apq.Net.FleckWebSocketServer.DoSend(System.String,System.Threading.CancellationToken)">
+        <member name="M:Apq.Net.FleckWebSocketServer.DoTask_Send(System.String,System.Threading.CancellationToken)">
             <summary>
             发送消息到客户端(实现)
             </summary>
             <returns>是否发送成功</returns>
         </member>
+        <member name="M:Apq.Net.FleckWebSocketServer.DoTask_Receive(System.Threading.CancellationToken)">
+            <summary>
+            任务实现:接收
+            </summary>
+        </member>
         <member name="M:Apq.Net.FleckWebSocketServer.DoTask_HeartBeat(System.Threading.CancellationToken)">
             <summary>
             任务实现:心跳检测
@@ -3607,8 +3612,18 @@
             <param name="Min">最小值(含)</param>
             <param name="Max">最大值(含)</param>
         </member>
-        <!-- Badly formed XML comment ignored for member "T:Apq.Net.PersistentClient" -->
-        <!-- Badly formed XML comment ignored for member "M:Apq.Net.PersistentClient.#ctor(System.Object)" -->
+        <member name="T:Apq.Net.PersistentClient">
+            <summary>
+            代表一个连接到服务端的长连接(客户端)
+            </summary>
+            <param name="client">WebSocket或TcpClient</param>
+        </member>
+        <member name="M:Apq.Net.PersistentClient.#ctor(System.Object)">
+            <summary>
+            代表一个连接到服务端的长连接(客户端)
+            </summary>
+            <param name="client">WebSocket或TcpClient</param>
+        </member>
         <member name="P:Apq.Net.PersistentClient.Server">
             <summary>
             域名/IP/Url
@@ -3649,9 +3664,9 @@
             提供:创建新连接实例的方法。重连时使用
             </summary>
         </member>
-        <member name="M:Apq.Net.PersistentClient.Init">
+        <member name="M:Apq.Net.PersistentClient.Reset``1">
             <summary>
-            对此实例进行初始化(绑定事件、启动任务等)
+            重置此实例(重新绑定事件、启动任务等)
             </summary>
         </member>
         <member name="M:Apq.Net.PersistentClient.Dispose(System.Boolean)">
@@ -3677,7 +3692,11 @@
             已尝试连接的次数
             </summary>
         </member>
-        <!-- Badly formed XML comment ignored for member "P:Apq.Net.PersistentClient.MaxTryTimes" -->
+        <member name="P:Apq.Net.PersistentClient.MaxTryTimes">
+            <summary>
+            手动连接时的最大重连的次数(&lt;0表示不限)
+            </summary>
+        </member>
         <member name="P:Apq.Net.PersistentClient.IsConnecting">
             <summary>
             是否正在连接(用于防止重复发起连接)
@@ -3737,14 +3756,9 @@
             连接成功后的处理
             </summary>
         </member>
-        <member name="P:Apq.Net.PersistentClient.ShouldClose">
-            <summary>
-            连接是否应该关闭(已空闲过久)
-            </summary>
-        </member>
         <member name="P:Apq.Net.PersistentClient.CloseReason">
             <summary>
-            关闭原因(只接受第一次非空赋值)
+            关闭原因
             </summary>
         </member>
         <member name="P:Apq.Net.PersistentClient.IsCloseBySelf">
@@ -3762,9 +3776,9 @@
             连接关闭后
             </summary>
         </member>
-        <member name="M:Apq.Net.PersistentClient.Close(System.String,System.Boolean)">
+        <member name="M:Apq.Net.PersistentClient.CloseAsync(System.String,System.Boolean)">
             <summary>
-            在新任务中关闭长连接
+            异步关闭长连接
             </summary>
         </member>
         <member name="M:Apq.Net.PersistentClient.DoTask_Close(System.String)">
@@ -3774,13 +3788,53 @@
             <returns>是否关闭成功</returns>
             <remarks>基类实现了停止连接任务</remarks>
         </member>
+        <member name="F:Apq.Net.PersistentClient.SendQueue">
+            <summary>
+            待发送的数据队列
+            </summary>
+        </member>
+        <member name="F:Apq.Net.PersistentClient.SendMsgQueue">
+            <summary>
+            待发送的消息队列
+            </summary>
+        </member>
+        <member name="P:Apq.Net.PersistentClient.SuspendSendQueue">
+            <summary>
+            是否暂停发送队列
+            </summary>
+        </member>
+        <member name="M:Apq.Net.PersistentClient.StartSend(System.Threading.CancellationToken)">
+            <summary>
+            启动发送任务
+            </summary>
+        </member>
+        <member name="M:Apq.Net.PersistentClient.DoTask_SendQueue(System.Threading.CancellationToken)">
+            <summary>
+            任务实现:发送
+            </summary>
+        </member>
+        <member name="M:Apq.Net.PersistentClient.DoTask_SendMsgQueue(System.Threading.CancellationToken)">
+            <summary>
+            任务实现:发送消息
+            </summary>
+        </member>
+        <member name="M:Apq.Net.PersistentClient.Enqueue(System.Collections.Generic.IList{System.Byte})">
+            <summary>
+            发送数据入队
+            </summary>
+        </member>
+        <member name="M:Apq.Net.PersistentClient.Enqueue(System.String)">
+            <summary>
+            发送消息入队
+            </summary>
+        </member>
         <member name="M:Apq.Net.PersistentClient.Send(System.Collections.Generic.IList{System.Byte},System.Threading.CancellationToken)">
             <summary>
             发送数据到服务端
             </summary>
             <returns>是否发送成功</returns>
         </member>
-        <member name="M:Apq.Net.PersistentClient.DoSend(System.Collections.Generic.IList{System.Byte},System.Threading.CancellationToken)">
+        <member name="M:Apq.Net.PersistentClient.DoTask_Send(System.Collections.Generic.IList{System.Byte},System.Threading.CancellationToken)">
             <summary>
             发送数据到服务端(实现)
             </summary>
@@ -3792,7 +3846,7 @@
             </summary>
             <returns>是否发送成功</returns>
         </member>
-        <member name="M:Apq.Net.PersistentClient.DoSend(System.String,System.Threading.CancellationToken)">
+        <member name="M:Apq.Net.PersistentClient.DoTask_Send(System.String,System.Threading.CancellationToken)">
             <summary>
             发送消息到服务端(实现)
             </summary>
@@ -3843,6 +3897,11 @@
             最后心跳时间
             </summary>
         </member>
+        <member name="P:Apq.Net.PersistentClient.ShouldClose">
+            <summary>
+            连接是否应该关闭(已空闲过久)
+            </summary>
+        </member>
         <member name="P:Apq.Net.PersistentClient.Provider_HeartBeatMsg">
             <summary>
             提供心跳消息(返回不为空就发)
@@ -3853,6 +3912,11 @@
             提供心跳数据(返回不为空就发)
             </summary>
         </member>
+        <member name="P:Apq.Net.PersistentClient.ReconnectWhenInterrupted">
+            <summary>
+            是否开启断线重连
+            </summary>
+        </member>
         <!-- Badly formed XML comment ignored for member "P:Apq.Net.PersistentClient.MaxTryTimesWhenInterrupted" -->
         <member name="P:Apq.Net.PersistentClient.CTS_ReconnectWhenInterrupted">
             <summary>
@@ -3908,9 +3972,9 @@
             任务的取消令牌:与连接关联的所有任务
             </summary>
         </member>
-        <member name="M:Apq.Net.PersistentServer.Init">
+        <member name="M:Apq.Net.PersistentServer.Reset``1">
             <summary>
-            对实例进行初始化
+            重置此实例(重新绑定事件、启动任务等)
             </summary>
         </member>
         <member name="M:Apq.Net.PersistentServer.Dispose(System.Boolean)">
@@ -3961,9 +4025,9 @@
             连接关闭后
             </summary>
         </member>
-        <member name="M:Apq.Net.PersistentServer.Close(System.String,System.Boolean)">
+        <member name="M:Apq.Net.PersistentServer.CloseAsync(System.String,System.Boolean)">
             <summary>
-            新任务中关闭长连接
+            异步关闭长连接
             </summary>
         </member>
         <member name="M:Apq.Net.PersistentServer.DoTask_Close(System.String)">
@@ -3978,7 +4042,7 @@
             </summary>
             <returns>是否发送成功</returns>
         </member>
-        <member name="M:Apq.Net.PersistentServer.DoSend(System.Collections.Generic.IList{System.Byte},System.Threading.CancellationToken)">
+        <member name="M:Apq.Net.PersistentServer.DoTask_Send(System.Collections.Generic.IList{System.Byte},System.Threading.CancellationToken)">
             <summary>
             发送数据到客户端(实现)
             </summary>
@@ -3990,7 +4054,7 @@
             </summary>
             <returns>是否发送成功</returns>
         </member>
-        <member name="M:Apq.Net.PersistentServer.DoSend(System.String,System.Threading.CancellationToken)">
+        <member name="M:Apq.Net.PersistentServer.DoTask_Send(System.String,System.Threading.CancellationToken)">
             <summary>
             发送消息到客户端(实现)
             </summary>
@@ -4016,6 +4080,16 @@
             发送后(文本)
             </summary>
         </member>
+        <member name="M:Apq.Net.PersistentServer.StartReceive(System.Threading.CancellationToken)">
+            <summary>
+            启动接收任务
+            </summary>
+        </member>
+        <member name="M:Apq.Net.PersistentServer.DoTask_Receive(System.Threading.CancellationToken)">
+            <summary>
+            任务实现:接收
+            </summary>
+        </member>
         <member name="E:Apq.Net.PersistentServer.AfterReceiveMsg">
             <summary>
             接收到客户端发送的消息后
@@ -4036,6 +4110,12 @@
             启动心跳任务
             </summary>
         </member>
+        <member name="M:Apq.Net.PersistentServer.DoTask_HeartBeat(System.Int32,System.Threading.CancellationToken)">
+            <summary>
+            任务实现:心跳检测
+            </summary>
+            <param name="interval">间隔(毫秒)</param>
+        </member>
         <member name="E:Apq.Net.PersistentServer.AfterHeartBeatTimeout">
             <summary>
             心跳超时后
@@ -4048,12 +4128,6 @@
             </summary>
             <returns>是否取消心跳任务</returns>
         </member>
-        <member name="M:Apq.Net.PersistentServer.DoTask_HeartBeat(System.Int32,System.Threading.CancellationToken)">
-            <summary>
-            任务实现:心跳检测
-            </summary>
-            <param name="interval">间隔(毫秒)</param>
-        </member>
         <member name="T:Apq.Net.PortEndPoint">
             <summary>
             端口端点
@@ -4103,8 +4177,18 @@
             参考来自 stackoverflow
             </summary>
         </member>
-        <!-- Badly formed XML comment ignored for member "T:Apq.Net.TcClient" -->
-        <!-- Badly formed XML comment ignored for member "M:Apq.Net.TcClient.#ctor(System.Net.Sockets.TcpClient)" -->
+        <member name="T:Apq.Net.TcClient">
+            <summary>
+            代表一个连接到服务端的长连接(客户端)
+            </summary>
+            <param name="client">TcpClient</param>
+        </member>
+        <member name="M:Apq.Net.TcClient.#ctor(System.Net.Sockets.TcpClient)">
+            <summary>
+            代表一个连接到服务端的长连接(客户端)
+            </summary>
+            <param name="client">TcpClient</param>
+        </member>
         <member name="P:Apq.Net.TcClient.TcpClient">
             <summary>
             TcpClient
@@ -4127,13 +4211,13 @@
             </summary>
             <returns>是否关闭成功</returns>
         </member>
-        <member name="M:Apq.Net.TcClient.DoSend(System.Collections.Generic.IList{System.Byte},System.Threading.CancellationToken)">
+        <member name="M:Apq.Net.TcClient.DoTask_Send(System.Collections.Generic.IList{System.Byte},System.Threading.CancellationToken)">
             <summary>
             发送数据到服务端(实现)
             </summary>
             <returns>是否发送成功</returns>
         </member>
-        <member name="M:Apq.Net.TcClient.DoSend(System.String,System.Threading.CancellationToken)">
+        <member name="M:Apq.Net.TcClient.DoTask_Send(System.String,System.Threading.CancellationToken)">
             <summary>
             发送消息到服务端
             </summary>
@@ -4199,6 +4283,72 @@
             在列表中的索引位置
             </summary>
         </member>
+        <member name="E:Apq.NotifyChange.NotifyChangeConcurrentQueue`1.ListChanging">
+            <summary>
+            列表即将更改事件
+            </summary>
+        </member>
+        <member name="M:Apq.NotifyChange.NotifyChangeConcurrentQueue`1.OnListChanging(Apq.NotifyChange.NotifyChangeConcurrentQueueEventArgs{`0})">
+            <summary>
+            通知列表即将更改
+            </summary>
+        </member>
+        <member name="M:Apq.NotifyChange.NotifyChangeConcurrentQueue`1.FireListChanging(Apq.NotifyChange.NotifyChangeConcurrentQueueEventArgs{`0})">
+            <summary>
+            仅触发事件
+            </summary>
+            <returns>是否阻止更改</returns>
+        </member>
+        <member name="E:Apq.NotifyChange.NotifyChangeConcurrentQueue`1.ListChanged">
+            <summary>
+            列表已更改事件
+            </summary>
+        </member>
+        <member name="M:Apq.NotifyChange.NotifyChangeConcurrentQueue`1.OnListChanged(Apq.NotifyChange.NotifyChangeConcurrentQueueEventArgs{`0})">
+            <summary>
+            通知列表已更改
+            </summary>
+        </member>
+        <member name="M:Apq.NotifyChange.NotifyChangeConcurrentQueue`1.FireListChanged(Apq.NotifyChange.NotifyChangeConcurrentQueueEventArgs{`0})">
+            <summary>
+            仅触发事件
+            </summary>
+        </member>
+        <member name="T:Apq.NotifyChange.NotifyChangeConcurrentQueueEventArgs`1">
+            <summary>
+            列表事件的参数
+            </summary>
+        </member>
+        <member name="M:Apq.NotifyChange.NotifyChangeConcurrentQueueEventArgs`1.#ctor(Apq.NotifyChange.NotifyChangeConcurrentQueue{`0})">
+            <summary>
+            列表事件的参数
+            </summary>
+        </member>
+        <member name="P:Apq.NotifyChange.NotifyChangeConcurrentQueueEventArgs`1.ConcurrentQueue">
+            <summary>
+            列表实例
+            </summary>
+        </member>
+        <member name="P:Apq.NotifyChange.NotifyChangeConcurrentQueueEventArgs`1.ChangeType">
+            <summary>
+            更改类型
+            </summary>
+        </member>
+        <member name="P:Apq.NotifyChange.NotifyChangeConcurrentQueueEventArgs`1.Cancel">
+            <summary>
+            指示是否取消(中断后续流程)
+            </summary>
+        </member>
+        <member name="P:Apq.NotifyChange.NotifyChangeConcurrentQueueEventArgs`1.Deleted">
+            <summary>
+            删除的项
+            </summary>
+        </member>
+        <member name="P:Apq.NotifyChange.NotifyChangeConcurrentQueueEventArgs`1.Inserted">
+            <summary>
+            插入的项
+            </summary>
+        </member>
         <member name="E:Apq.NotifyChange.NotifyChangeList`1.ListChanging">
             <summary>
             列表即将更改事件
@@ -4352,6 +4502,72 @@
             仅触发事件(暂停则不触发)
             </summary>
         </member>
+        <member name="E:Apq.NotifyChange.NotifyChangeQueue`1.ListChanging">
+            <summary>
+            列表即将更改事件
+            </summary>
+        </member>
+        <member name="M:Apq.NotifyChange.NotifyChangeQueue`1.OnListChanging(Apq.NotifyChange.NotifyChangeQueueEventArgs{`0})">
+            <summary>
+            通知列表即将更改
+            </summary>
+        </member>
+        <member name="M:Apq.NotifyChange.NotifyChangeQueue`1.FireListChanging(Apq.NotifyChange.NotifyChangeQueueEventArgs{`0})">
+            <summary>
+            仅触发事件
+            </summary>
+            <returns>是否阻止更改</returns>
+        </member>
+        <member name="E:Apq.NotifyChange.NotifyChangeQueue`1.ListChanged">
+            <summary>
+            列表已更改事件
+            </summary>
+        </member>
+        <member name="M:Apq.NotifyChange.NotifyChangeQueue`1.OnListChanged(Apq.NotifyChange.NotifyChangeQueueEventArgs{`0})">
+            <summary>
+            通知列表已更改
+            </summary>
+        </member>
+        <member name="M:Apq.NotifyChange.NotifyChangeQueue`1.FireListChanged(Apq.NotifyChange.NotifyChangeQueueEventArgs{`0})">
+            <summary>
+            仅触发事件
+            </summary>
+        </member>
+        <member name="T:Apq.NotifyChange.NotifyChangeQueueEventArgs`1">
+            <summary>
+            列表事件的参数
+            </summary>
+        </member>
+        <member name="M:Apq.NotifyChange.NotifyChangeQueueEventArgs`1.#ctor(Apq.NotifyChange.NotifyChangeQueue{`0})">
+            <summary>
+            列表事件的参数
+            </summary>
+        </member>
+        <member name="P:Apq.NotifyChange.NotifyChangeQueueEventArgs`1.Queue">
+            <summary>
+            列表实例
+            </summary>
+        </member>
+        <member name="P:Apq.NotifyChange.NotifyChangeQueueEventArgs`1.ChangeType">
+            <summary>
+            更改类型
+            </summary>
+        </member>
+        <member name="P:Apq.NotifyChange.NotifyChangeQueueEventArgs`1.Cancel">
+            <summary>
+            指示是否取消(中断后续流程)
+            </summary>
+        </member>
+        <member name="P:Apq.NotifyChange.NotifyChangeQueueEventArgs`1.Deleted">
+            <summary>
+            删除的项
+            </summary>
+        </member>
+        <member name="P:Apq.NotifyChange.NotifyChangeQueueEventArgs`1.Inserted">
+            <summary>
+            插入的项
+            </summary>
+        </member>
         <member name="T:Apq.NotifyChange.NotifyPropertyChange">
             <summary>
             属性更改通知(可暂停)

BIN
gsproxy/gsproxy/GsProxy.dll


BIN
gsproxy/gsproxy/GsProxy.exe


BIN
gsproxy/gsproxy/GsProxy.pdb