コード例 #1
0
        public GSocketListener(IPAddress address, int port, GSocketListener.ClientArrivedHandler handler)
        {
            _port = port;

            ClientArrived += handler;

            _tcpListener = new TcpListener(address, _port);
            _tcpListener.Start();

            _acceptorThread = new Thread(new ThreadStart(_acceptorloop));
            _acceptorThread.Start();
        }
コード例 #2
0
        public GSocketListener(int port, GSocketListener.ClientArrivedHandler handler, bool setReuseAddress = true)
        {
            _port = port;

            ClientArrived += handler;

            _tcpListener = new TcpListener(_port);
            if (setReuseAddress)
            {
                _tcpListener.Server.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, 1);
            }
            _tcpListener.Start();

            _acceptorThread = new GThread(new ThreadStart(_acceptorloop), "Acceptor Loop", true);
            _acceptorThread.Start();
        }