Skip to content

Latest commit

 

History

History
41 lines (26 loc) · 1019 Bytes

Changelog.md

File metadata and controls

41 lines (26 loc) · 1019 Bytes

Changelog

0.2.1

Fix

  • mpmc block destructor could go out-of-bounds for needs_drop objects.

Changed

  • mpmc::Writer now unconditionally Sendable.

Added

  • Better test coverage.

0.2.0

New mpmc algorithm. Previous algorithm was based on block write counters - block's len is updated when counter reaches 0. New one is based on bitblocks - each element in block, have corresponding bit, and it is raised when write finished. The Number of continuously raised bits is block's len. This ensures that readers will see their messages ASAP, while maintaining message order. This requires less atomic stores on the writer's side as well, so it is almost 30% faster!

See how it works.

Changed

  • spmc and mpmc now have separate Readers.
  • LendingItereator replaced with non-GAT LendingReader.

Added

  • Readers now Cloneable.
  • MIRI-friendly fuzzy testing.

0.1.1

The library is MIRI friendly now.

0.1.0

Initial release.