Exemplo n.º 1
0
        public static Networkf.Message ParseMessage(byte[] buf, ref int i)
        {
            int type    = ReadMessageType(buf, ref i);
            var stream  = new BitDataInputStream(buf, i);
            var message = Message.New(type);

            message.ReadFrom(stream);
            i = stream.i;
            return(new NetworkfMessage(message));
        }
Exemplo n.º 2
0
 protected override void Send(Message message)           // main thread
 {
     lock (_sendingMsgCache) {
         var copy  = Message.New(message.MessageType);
         var read  = new BitDataInputStream(_exchange);
         var write = new BitDataOutputStream(_exchange);
         message.WriteTo(write);
         copy.ReadFrom(read);
         _sendingMsgCache.Enqueue(copy);
         Monitor.Pulse(_sendingMsgCache);
     }
 }