Esempio n. 1
0
        public override async ValueTask <bool> WaitToReadAsync(CancellationToken token = default)
        {
            await reader.WaitToReadAsync(token).ConfigureAwait(false);

            //lock and deserialize
            using (await readLock.Acquire(token).ConfigureAwait(false))
            {
                var lookup = Partition;
                buffer.Add(await reader.DeserializeAsync(lookup, token).ConfigureAwait(false));
                cursor.Advance(lookup.Position);
            }
            return(true);
        }