Skip to content

v2.0.0-alpha.unstable.rev0031

Pre-release
Pre-release
Compare
Choose a tag to compare
@alanmcgovern 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.