| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 | 
							- using System.Collections.Concurrent;
 
- using NetCore;
 
- using NetCore.Protocol.MemoryPack;
 
- namespace NetServer.InternalServer;
 
- public class SendInternalServerManager
 
- {
 
-     public class ResponeseCallBack
 
-     {
 
-         public long sendCount;
 
-         public long sendTime;
 
-         public System.Action<InternalMemoryRequst> callBack;
 
-     }
 
-     public static SendInternalServerManager Instance
 
-     {
 
-         get
 
-         {
 
-             if (_sendInternalServerManager == null)
 
-             {
 
-                 _sendInternalServerManager = new SendInternalServerManager();
 
-             }
 
-             return _sendInternalServerManager;
 
-         }
 
-     }
 
-     public static SendInternalServerManager _sendInternalServerManager;
 
-     private long sendCount;
 
-     private ConcurrentDictionary<long, ResponeseCallBack> _responeseCallBacks = new ConcurrentDictionary<long, ResponeseCallBack>();
 
-     public void NoticeResponeseCallBack(InternalMemoryRequst internalMemoryRequst)
 
-     {
 
-         if (_responeseCallBacks.Remove(internalMemoryRequst.ResponeseSendSequence, out ResponeseCallBack callBack))
 
-         {
 
-             callBack.callBack?.Invoke(internalMemoryRequst);
 
-         }
 
-     }
 
-     public void SendInternalServer(ServerType serverType, InternalMemoryResponese internalMemoryResponese,
 
-         System.Action<InternalMemoryRequst> callBack)
 
-     {
 
-         long currSendCount = sendCount++;
 
-         ResponeseCallBack responeseCallBack = new ResponeseCallBack();
 
-         responeseCallBack.sendTime = System.DateTime.Now.Ticks;
 
-         responeseCallBack.sendCount= currSendCount;
 
-         responeseCallBack.callBack= callBack;
 
-         internalMemoryResponese.sendSequence = currSendCount;
 
-         _responeseCallBacks.TryAdd(currSendCount, responeseCallBack);
 
-         IConnection connection= ServerLinkMnager.Instance.GetServerConnection(serverType);
 
-         connection.SendData(internalMemoryResponese);
 
-     }
 
- }
 
 
  |