Beispiel #1
0
        /// <summary>
        /// 发送组件退出请求
        /// </summary>
        /// <param name="cid"></param>
        public void SendComponentExit(string cid)
        {
            //组件注册消息整理
            MSG msg = new MSG()
            {
                type      = MSG.Type.COMPONENT,
                timestamp = ProtoBufHelp.TimeSpan(),
                sequence  = 1,
                component = new Models.Component()
                {
                    command          = Models.Component.Command.SIGNOUT_REQ,
                    componentrequest = new ComponentRequest()
                    {
                        componentinfo = new ComponentInfo()
                        {
                            componentid = cid
                        }
                    }
                }
            };

            //把成实转成字节流
            byte[] byt = ProtoBufHelp.Serialize <MSG>(msg);
            dealer.Send(msg);
        }
Beispiel #2
0
 public void Send(MSG msg, string toId = "", string head = "request")
 {
     try
     {
         if (!dealer.IsDisposed)
         {
             byte[]       byt   = ProtoBufHelp.Serialize <MSG>(msg);
             NetMQMessage mqmsg = new NetMQMessage(6);
             mqmsg.AppendEmptyFrame();
             mqmsg.Append("worker");
             mqmsg.Append(head);
             mqmsg.Append(ManagerHelp.ComponentId); //当前组件ID
             mqmsg.Append(toId);                    //下一级组件ID或上一级的组件ID
             mqmsg.Append(byt);
             //发送注册请求
             dealer.SendMultipartMessage(mqmsg);
         }
     }
     catch (Exception ex)
     {
     }
 }