NetMQ.NetMQPoller.Add C# (CSharp) Method

Add() public method

public Add ( ISocketPollable socket ) : void
socket ISocketPollable
return void
        public void Add(ISocketPollable socket)
        {
            if (socket == null)
                throw new ArgumentNullException("socket");
            CheckDisposed();

            Run(() =>
            {
                if (m_sockets.Contains(socket.Socket))
                    return;

                m_sockets.Add(socket.Socket);

                socket.Socket.EventsChanged += OnSocketEventsChanged;
                m_isPollSetDirty = true;
            });
        }

Same methods

NetMQPoller::Add ( [ timer ) : void
NetMQPoller::Add ( [ socket, [ callback ) : void

Usage Example

        static void Main(string[] args)
        {
            SubscriberSocket socket = new SubscriberSocket(">tcp://localhost:1012");

            socket.Subscribe("aaa");
            socket.ReceiveReady += Socket_ReceiveReady;

            NetMQ.NetMQPoller poller = new NetMQ.NetMQPoller();
            poller.Add(socket);

            poller.RunAsync();


            Task.Factory.StartNew(() =>
            {
                while (true)
                {
                    Thread.Sleep(10 * 1000);

                    var tmp = d;
                    d       = new List <TimeSpan>();

                    if (tmp.Any())
                    {
                        Console.WriteLine($"{DateTime.Now}\t{tmp.Count / 10}/s\t{tmp.Average(x => x.TotalMilliseconds)}");
                    }
                    else
                    {
                        Console.WriteLine("-");
                    }
                }
            });

            Console.Read();
        }
All Usage Examples Of NetMQ.NetMQPoller::Add