protected override Task <Stream> InitializeImplAsync(Stream param)
 {
     _dataStream           = param;
     _receiveStream        = new CircularBufferStream(ReceiveBufferSize);
     _dataStreamReader     = new StreamReader(_receiveStream, Encoding.UTF8);
     _dataStreamLineReader = new SafeLineReader(_dataStreamReader);
     return(base.InitializeImplAsync(param));
 }
        public override async Task ShutdownAsync()
        {
            await base.ShutdownAsync();

            _dataStreamLineReader = null;
            _dataStreamReader?.Dispose();
            _dataStreamReader = null;
            _receiveStream    = null;
        }