示例#1
0
        public IDisposable Listen(IPEndPoint ep)
        {
            if (listening)
            {
                throw new InvalidOperationException("Already listening.");
            }

            ListenEndPoint = ep;

            listener = new ConnectionListener(eventBase, ep, 1000);
            listener.Enable();
            listener.ConnectionAccepted = (fd, remoteEp) =>
            {
                connections++;
                var ev = new Event(eventBase, fd, Events.EV_WRITE | Events.EV_READ);

                //if (OnConnection != null)
                //    OnConnection(this, new ConnectionEventArgs(new OarsSocket(ev, remoteEp, this)));
            };
            listening = true;
            closed    = false;

            // XXX return Disposable(() => Close());
            return(null);
        }