diff --git a/src/NmeaParser/NmeaDevice.cs b/src/NmeaParser/NmeaDevice.cs index c65f493..3d7acd2 100644 --- a/src/NmeaParser/NmeaDevice.cs +++ b/src/NmeaParser/NmeaDevice.cs @@ -83,9 +83,9 @@ namespace NmeaParser break; if (readCount > 0) { - OnData(buffer.Take(readCount).ToArray()); + OnData(buffer, readCount); } - await Task.Delay(50); + await Task.Yield(); } }); } @@ -150,9 +150,9 @@ namespace NmeaParser /// protected abstract Task CloseStreamAsync(Stream stream); - private void OnData(byte[] data) + private void OnData(byte[] data, int count) { - var nmea = System.Text.Encoding.UTF8.GetString(data, 0, data.Length); + var nmea = System.Text.Encoding.UTF8.GetString(data, 0, count); List lines = new List(); lock (m_lockObject) {