Show / Hide Table of Contents

Class NonBlockingTextReader

The NonBlockingTextReader is an implementation of a BufferedTextReader designed to wrap other readers where latency is known not to be a problem and we don't expect to ever have an empty read occur before the actual end of the stream.

Inheritance
object
MarshalByRefObject
TextReader
ParsingTextReader
BufferedTextReader
NonBlockingTextReader
Implements
IDisposable
Inherited Members
BufferedTextReader.DefaultBufferSize
BufferedTextReader.ReadBlock(char[], int, int)
BufferedTextReader.Read(char[], int, int)
BufferedTextReader.Read()
BufferedTextReader.Peek()
BufferedTextReader.EndOfStream
BufferedTextReader.Close()
ParsingTextReader.Create(TextReader, int)
ParsingTextReader.Create(TextReader)
ParsingTextReader.Create(Stream, int)
ParsingTextReader.Create(Stream)
ParsingTextReader.CreateBlocking(TextReader)
ParsingTextReader.CreateBlocking(TextReader, int)
ParsingTextReader.CreateNonBlocking(TextReader)
ParsingTextReader.CreateNonBlocking(TextReader, int)
TextReader.Null
TextReader.Dispose()
TextReader.ReadAsync(char[], int, int)
TextReader.ReadBlockAsync(char[], int, int)
TextReader.ReadLine()
TextReader.ReadLineAsync()
TextReader.ReadToEnd()
TextReader.ReadToEndAsync()
TextReader.Synchronized(TextReader)
MarshalByRefObject.GetLifetimeService()
MarshalByRefObject.InitializeLifetimeService()
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: VDS.RDF.Parsing
Assembly: dotNetRdf.dll
Syntax
public sealed class NonBlockingTextReader : BufferedTextReader, IDisposable
Remarks

By default, dotNetRDF parsers will wrap a MemoryStream or FileStream (or a TextReader that uses such a stream) in a NonBlockingTextReader, and all other types of Stream or TextReader in a BlockingTextReader to handle potential latency issues. In some rare cases you may find that non-blocking IO leads to incorrect parsing errors being thrown (typically a premature end-of-input detected due to latency in reading from the underlying stream. In such cases it is recommended to use CreateBlocking(TextReader) or CreateBlocking(TextReader, int) to force the use of blocking IO.

Methods

| Edit this page View Source

FillBuffer()

Fills the buffer in a non-blocking manner.

Declaration
protected override void FillBuffer()
Overrides
BufferedTextReader.FillBuffer()

Implements

IDisposable

Extension Methods

Extensions.ToSafeString(object)
Extensions.AsEnumerable<T>(T)
  • Edit this page
  • View Source
In this article
  • Methods
    • FillBuffer()
  • Implements
  • Extension Methods
Back to top Generated by DocFX