Releases: ibraheemdev/seize
Releases · ibraheemdev/seize
0.5.1
0.5.0
This is a relatively large release, see #35 for more details.
- Epoch tracking has been removed, along with the
Link,AsLink, andCollector::linkAPI surface. - The
Deferredtype has also been removed as a consequence of the removal ofLink. - The
Cloneimplementation forCollectorhas been removed. - Unprotected guards have been removed.
- Reclaimers now take
*mut T, removing the need for type annotations when passing reclaimers toCollector::retire. Guard::belongs_tohas been removed in favour of aGuard::collectoraccessor andCollector: PartialEqimplementation.- Reclaimers now receive a reference to the collector as their second argument.
- There are now protected RMW operations on the
Guardtrait, such asGuard::swapandGuard::compare_exchange.
0.4.9
- Fixed a bug where
SeqCstprotected loads were downgraded toAcquireon Windows, when thefast-barrierfeature was enabled.
0.4.8
- Performance improvements.
- The
fast-barrierfeature flag enables runtime detection of fast memory barriers on Windows and Linux. It is enabled by default in this release. UnprotectedGuardis now#[non_exhaustive], preventing accidental guard usage that can lead to undefined behavior in safe code.
0.4.5
- Fixed a potential data race when using owned guards.
0.4.4
- Minor performance improvements.
0.4.3
- Minor performance improvements.
0.4.2
- Fix memory corruption bug when
retireis recursively called during reclamation. - Added a
reclaim_allfunction to support recursive calls to retire.
0.4.1
- Added the
Deferredtype for deferred retirement batches. - Minor performance improvements.
0.4.0
- Guards are now abstracted with a
Guardtrait. Guardrenamed toLocalGuard.- Added
OwnedGuard, a guard that implementsSendandSync. - Moved unprotected guard to functionality to the
UnprotectedGuardtype. - Removed
Collector::ptr_eqand addedGuard::belongs_to.