Esempio n. 1
0
        public static NetMessage PostMsg(this WebsocketBase socket, Allpet.DB.SDK.NetMessage msg)
        {
            NetMessage __msg = null;

            socket.SendWithOnceCallback(msg, async(msgback) =>
            {
                __msg = msgback;
            });
            while (socket.Connected && __msg == null)
            {
                System.Threading.Thread.Sleep(1);
            }
            return(__msg);
        }
Esempio n. 2
0
        public UInt64 Send(Allpet.DB.SDK.NetMessage msg)
        {
            UInt64 _id = 0;

            lock (this)
            {
                _id = this.sendMsgID;
                this.sendMsgID++;
            }
            msg.Params["_id"] = BitConverter.GetBytes(_id);

            wantsend.Enqueue(msg.ToBytes());
            return(_id);
        }
Esempio n. 3
0
        public void SendWithOnceCallback(Allpet.DB.SDK.NetMessage msg, OnClientRecv callback)
        {
            var _id = Send(msg);

            this.mapRecv[_id] = callback;
        }