修改为static

This commit is contained in:
Mili 2023-03-07 23:24:46 +08:00
parent 33dea82b43
commit 36c15cb062

View File

@ -6,6 +6,8 @@ namespace Milimoe.FunGame.Core.Service
{ {
internal class SocketManager internal class SocketManager
{ {
#region
/// <summary> /// <summary>
/// 客户端专用Socket /// 客户端专用Socket
/// </summary> /// </summary>
@ -19,52 +21,9 @@ namespace Milimoe.FunGame.Core.Service
private static Socket? _Socket = null; private static Socket? _Socket = null;
private static Socket? _ServerSocket = null; private static Socket? _ServerSocket = null;
/// <summary> #endregion
/// 异步监听事件
/// </summary>
/// <typeparam name="T">结果类</typeparam>
/// <param name="type">通信类型</param>
/// <param name="objs">参数</param>
/// <returns>结果</returns>
internal delegate Task<T> SocketHandler<T>(SocketMessageType type, params object[] objs);
/// <summary>
/// 异步监听事件
/// </summary>
/// <param name="type">通信类型</param>
/// <param name="objs">参数</param>
/// <returns>线程</returns>
internal delegate Task SocketHandler(SocketMessageType type, params object[] objs);
/// <summary> #region
/// 监听返回值为bool的事件
/// </summary>
internal event SocketHandler<bool>? SocketReceiveBoolAsync;
/// <summary>
/// 监听返回值为String的事件
/// </summary>
internal event SocketHandler<string>? SocketReceiveStringAsync;
/// <summary>
/// 监听返回值为object的事件
/// </summary>
internal event SocketHandler<object>? SocketReceiveObjectAsync;
/// <summary>
/// 监听返回值为int的事件
/// </summary>
internal event SocketHandler<int>? SocketReceiveIntAsync;
/// <summary>
/// 监听返回值为decimal的事件
/// </summary>
internal event SocketHandler<decimal>? SocketReceiveDecimalAsync;
/// <summary>
/// 监听没有返回值的事件
/// </summary>
internal event SocketHandler? SocketReceiveAsync;
/// <summary> /// <summary>
/// 创建服务器监听Socket /// 创建服务器监听Socket
@ -149,7 +108,7 @@ namespace Milimoe.FunGame.Core.Service
} }
return null; return null;
} }
/// <summary> /// <summary>
/// 用于服务器端向客户端Socket发送信息 /// 用于服务器端向客户端Socket发送信息
/// </summary> /// </summary>
@ -271,13 +230,64 @@ namespace Milimoe.FunGame.Core.Service
}; };
} }
#endregion
#region
/// <summary>
/// 异步监听事件
/// </summary>
/// <typeparam name="T">结果类</typeparam>
/// <param name="type">通信类型</param>
/// <param name="objs">参数</param>
/// <returns>结果</returns>
internal delegate Task<T> SocketHandler<T>(SocketMessageType type, params object[] objs);
/// <summary>
/// 异步监听事件
/// </summary>
/// <param name="type">通信类型</param>
/// <param name="objs">参数</param>
/// <returns>线程</returns>
internal delegate Task SocketHandler(SocketMessageType type, params object[] objs);
/// <summary>
/// 监听返回值为bool的事件
/// </summary>
internal static event SocketHandler<bool>? SocketReceiveBoolAsync;
/// <summary>
/// 监听返回值为String的事件
/// </summary>
internal static event SocketHandler<string>? SocketReceiveStringAsync;
/// <summary>
/// 监听返回值为object的事件
/// </summary>
internal static event SocketHandler<object>? SocketReceiveObjectAsync;
/// <summary>
/// 监听返回值为int的事件
/// </summary>
internal static event SocketHandler<int>? SocketReceiveIntAsync;
/// <summary>
/// 监听返回值为decimal的事件
/// </summary>
internal static event SocketHandler<decimal>? SocketReceiveDecimalAsync;
/// <summary>
/// 监听没有返回值的事件
/// </summary>
internal static event SocketHandler? SocketReceiveAsync;
/// <summary> /// <summary>
/// 触发异步返回bool事件 /// 触发异步返回bool事件
/// </summary> /// </summary>
/// <param name="type">通信类型</param> /// <param name="type">通信类型</param>
/// <param name="objs">参数</param> /// <param name="objs">参数</param>
/// <returns>bool结果</returns> /// <returns>bool结果</returns>
internal async Task<bool> OnSocketReceiveBoolAsync(SocketMessageType type, params object[] objs) internal static async Task<bool> OnSocketReceiveBoolAsync(SocketMessageType type, params object[] objs)
{ {
if (SocketReceiveBoolAsync != null) if (SocketReceiveBoolAsync != null)
{ {
@ -292,7 +302,7 @@ namespace Milimoe.FunGame.Core.Service
/// <param name="type">通信类型</param> /// <param name="type">通信类型</param>
/// <param name="objs">参数</param> /// <param name="objs">参数</param>
/// <returns>string结果</returns> /// <returns>string结果</returns>
internal async Task<string> OnSocketReceiveStringAsync(SocketMessageType type, params object[] objs) internal static async Task<string> OnSocketReceiveStringAsync(SocketMessageType type, params object[] objs)
{ {
if (SocketReceiveStringAsync != null) if (SocketReceiveStringAsync != null)
{ {
@ -307,7 +317,7 @@ namespace Milimoe.FunGame.Core.Service
/// <param name="type">通信类型</param> /// <param name="type">通信类型</param>
/// <param name="objs">参数</param> /// <param name="objs">参数</param>
/// <returns>object结果</returns> /// <returns>object结果</returns>
internal async Task<object> OnSocketReceiveObjectAsync(SocketMessageType type, params object[] objs) internal static async Task<object> OnSocketReceiveObjectAsync(SocketMessageType type, params object[] objs)
{ {
if (SocketReceiveObjectAsync != null) if (SocketReceiveObjectAsync != null)
{ {
@ -322,7 +332,7 @@ namespace Milimoe.FunGame.Core.Service
/// <param name="type">通信类型</param> /// <param name="type">通信类型</param>
/// <param name="objs">参数</param> /// <param name="objs">参数</param>
/// <returns>int结果</returns> /// <returns>int结果</returns>
internal async Task<int> OnSocketReceiveIntAsync(SocketMessageType type, params object[] objs) internal static async Task<int> OnSocketReceiveIntAsync(SocketMessageType type, params object[] objs)
{ {
if (SocketReceiveIntAsync != null) if (SocketReceiveIntAsync != null)
{ {
@ -337,7 +347,7 @@ namespace Milimoe.FunGame.Core.Service
/// <param name="type">通信类型</param> /// <param name="type">通信类型</param>
/// <param name="objs">参数</param> /// <param name="objs">参数</param>
/// <returns>decimal结果</returns> /// <returns>decimal结果</returns>
internal async Task<decimal> OnSocketReceiveDecimalAsync(SocketMessageType type, params object[] objs) internal static async Task<decimal> OnSocketReceiveDecimalAsync(SocketMessageType type, params object[] objs)
{ {
if (SocketReceiveDecimalAsync != null) if (SocketReceiveDecimalAsync != null)
{ {
@ -351,12 +361,14 @@ namespace Milimoe.FunGame.Core.Service
/// </summary> /// </summary>
/// <param name="type">通信类型</param> /// <param name="type">通信类型</param>
/// <param name="objs">参数</param> /// <param name="objs">参数</param>
internal async Task OnSocketReceiveAsync(SocketMessageType type, params object[] objs) internal static async Task OnSocketReceiveAsync(SocketMessageType type, params object[] objs)
{ {
if (SocketReceiveAsync != null) if (SocketReceiveAsync != null)
{ {
await SocketReceiveAsync.Invoke(type, objs); await SocketReceiveAsync.Invoke(type, objs);
} }
} }
#endregion
} }
} }