Beispiel #1
0
        protected override void XAttachPipe(Pipe pipe, bool icanhasall)
        {
            Debug.Assert(pipe != null);

            //  ZMQ_PAIR socket can only be connected to a single peer.
            //  The socket rejects any further connection requests.
            if (m_pipe == null)
                m_pipe = pipe;
            else
                pipe.Terminate (false);
        }
Beispiel #2
0
 public void Hiccuped(Pipe pipe)
 {
     if (m_options.DelayAttachOnConnect)
         pipe.Terminate(false);
     else
         // Notify derived sockets of the hiccup
         XHiccuped(pipe);
 }
Beispiel #3
0
        private void AttachPipe(Pipe pipe, bool icanhasall)
        {
            //  First, register the pipe so that we can terminate it later on.

            pipe.SetEventSink(this);
            m_pipes.Add(pipe);

            //  Let the derived socket type know about new pipe.
            XAttachPipe(pipe, icanhasall);

            //  If the socket is already being closed, ask any new pipes to terminate
            //  straight away.
            if (IsTerminating)
            {
                RegisterTermAcks(1);
                pipe.Terminate(false);
            }
        }