Ejemplo n.º 1
0
            internal static ReadOnlySequenceProtoReader GetRecycled()
            {
                var tmp = s_lastReader;

                s_lastReader = null;
                return(tmp);
            }
Ejemplo n.º 2
0
        /// <summary>
        /// Creates a new reader against a multi-segment buffer
        /// </summary>
        /// <param name="source">The source buffer</param>
        /// <param name="state">Reader state</param>
        /// <param name="model">The model to use for serialization; this can be null, but this will impair the ability to deserialize sub-objects</param>
        /// <param name="context">Additional context about this serialization operation</param>
        public static ProtoReader Create(out State state, ReadOnlySequence <byte> source, TypeModel model, SerializationContext context = null)
        {
            var reader = ReadOnlySequenceProtoReader.GetRecycled()
                         ?? new ReadOnlySequenceProtoReader();

            reader.Init(out state, source, model, context);
            return(reader);
        }
Ejemplo n.º 3
0
 internal override void Recycle()
 {
     Dispose();
     s_lastReader = this;
 }