Example #1
0
        /// <summary>
        /// 创建TcpListener实例。
        /// </summary>
        /// <param name="setting">设置项。</param>
        public TcpListener(ServerSetting setting)
        {
            CommonException.CheckArgumentNull(setting, "setting");
            _serverSetting   = setting;
            setting.Readonly = true;

            _log = LogBase.Empty;
        }
Example #2
0
 void Dispose_Body(object state)
 {
     if (Running)
     {
         Stop();
         System.Threading.Thread.Sleep(100);
     }
     System.Threading.Interlocked.Exchange(ref _log, null);
     _serverSetting = null;
     _beginTime     = null;
     _endTime       = null;
     System.Threading.Interlocked.CompareExchange(ref _disposed, 2, 1);
 }
Example #3
0
 /// <summary>
 /// 创建TcpListener实例。
 /// </summary>
 /// <param name="port">监听端口,自适应ipv4/ipv6。</param>
 public TcpListener(int port)
     : this(ServerSetting.CreateDefault(port))
 {
 }