v2.0.0-alpha.unstable.rev0031
Pre-release
Pre-release
alanmcgovern
released this
18 Dec 01:48
·
833 commits
to master
since this release
General
- Small optimisation to reduce lock contention on the main loop.
- Fixed a bug in MemoryWriter where it was incorrectly flushing data to disk and could lose data, or throw an error, as a result.
- Ensured all data is flushed to disk before entering 'Seeding' mode.
- Improved the performance of 'WaitForPendingWritesAsync' in the disk manager.
- Improved handling for pieces which are partially downloaded by one peer who disconnects before the piece has completed.
- Optimised seeking in the streams created by StreamProvider so pending piece requests are not unconditionally cancelled whenever a Seek operation occurs.
- StreamProvider now relies on the ClientEngine's DiskManager to read data. This ensures it works when the memory cache is enabled.
- Return 0 when EOF is reached in a stream created by StreamProvider, rather than throwing an error when too many bytes are read.
- When creating a stream using StreamProvider with pre-buffering enabled, the Stream is now at position 0 rather than position 1.