Ejemplo n.º 1
0
 public SocketServerBase(IAppServer appServer, ListenerInfo[] listeners)
 {
     AppServer = appServer;
     IsRunning = false;
     ListenerInfos = listeners;
     Listeners = new List<ISocketListener>(listeners.Length);
 }
Ejemplo n.º 2
0
        public TcpSocketServerBase(IAppServer appServer, ListenerInfo[] listeners)
            : base(appServer, listeners)
        {
            var config = appServer.Config;

            uint dummy = 0;
            m_KeepAliveOptionValues = new byte[Marshal.SizeOf(dummy) * 3];
            m_KeepAliveOptionOutValues = new byte[m_KeepAliveOptionValues.Length];
            //whether enable KeepAlive
            BitConverter.GetBytes((uint)1).CopyTo(m_KeepAliveOptionValues, 0);
            //how long will start first keep alive
            BitConverter.GetBytes((uint)(config.KeepAliveTime * 1000)).CopyTo(m_KeepAliveOptionValues, Marshal.SizeOf(dummy));
            //keep alive interval
            BitConverter.GetBytes((uint)(config.KeepAliveInterval * 1000)).CopyTo(m_KeepAliveOptionValues, Marshal.SizeOf(dummy) * 2);

            m_SendTimeOut = config.SendTimeOut;
            m_ReceiveBufferSize = config.ReceiveBufferSize;
            m_SendBufferSize = config.SendBufferSize;
        }
Ejemplo n.º 3
0
 public TcpAsyncSocketListener(ListenerInfo info)
     : base(info)
 {
     m_ListenBackLog = info.BackLog;
 }
Ejemplo n.º 4
0
 public UdpSocketListener(ListenerInfo info)
     : base(info)
 {
 }
Ejemplo n.º 5
0
 protected abstract ISocketListener CreateListener(ListenerInfo listenerInfo);
Ejemplo n.º 6
0
 /// <summary>
 /// 构造函数
 /// </summary>
 /// <param name="info">监听信息</param>
 protected SocketListenerBase(ListenerInfo info)
 {
     Info = info;
 }
Ejemplo n.º 7
0
 protected override ISocketListener CreateListener(ListenerInfo listenerInfo)
 {
     return new TcpAsyncSocketListener(listenerInfo);
 }