コード例 #1
0
        public void Deserialize_10000_Messages()
        {
            var channel = new BenchmarkMqttChannel(_serializedPacket);
            var reader  = new MqttChannelAdapter(channel, new MqttPacketFormatterAdapter(new MqttBufferWriter(4096, 65535)), null, new MqttNetEventLogger());

            for (var i = 0; i < 10000; i++)
            {
                channel.Reset();

                var header = reader.ReceivePacketAsync(CancellationToken.None).GetAwaiter().GetResult();
            }
        }
コード例 #2
0
        public void Deserialize_10000_Messages()
        {
            var channel          = new BenchmarkMqttChannel(_serializedPacket);
            var fixedHeader      = new byte[2];
            var singleByteBuffer = new byte[1];

            for (var i = 0; i < 10000; i++)
            {
                channel.Reset();

                var header = MqttPacketReader.ReadFixedHeaderAsync(channel, fixedHeader, singleByteBuffer, CancellationToken.None).GetAwaiter().GetResult();

                var receivedPacket = new ReceivedMqttPacket(
                    header.Flags,
                    new MqttPacketBodyReader(_serializedPacket.Array, _serializedPacket.Count - header.RemainingLength, _serializedPacket.Array.Length));

                _serializer.Deserialize(receivedPacket);
            }
        }