Commit Graph

13 Commits

Author SHA1 Message Date
John Nunley c407467c20
feat: Add an overflow push method
In some cases it is desired to have a "lossy" queue for data. Such as an
event queue where more recent events should be prioritized over older
ones, where infinite storage is impractical. This commit adds a method
called "force_push" which enables this usage.

Bounded queue code is partially derived from the following commit:
bd75c3c45e

cc smol-rs/async-channel#44
2024-03-30 16:38:05 -07:00
John Nunley 8c42b8dd9d
Add alternate implementations of synchronization primitives (#27) 2022-10-07 06:48:10 -07:00
John Nunley 06c99537c2
replace cache_padded with crossbeam-utils (#26) 2022-09-06 09:22:39 -07:00
John Nunley d3bf5a5424
Make it so this crate can be `no_std` (#22) 2022-08-25 02:09:13 +09:00
Taiki Endo 9de877f9e0 Do not copy data before dropping 2022-07-22 00:03:27 +09:00
Taiki Endo d1218a02e0 Use get_mut instead of atomic load in Drop impls 2022-07-22 00:03:27 +09:00
Taiki Endo 194cf156b1 Revert "Fix fence on non-x86 arch and miri (#16)"
This reverts commit 54df36a543.
2022-07-20 23:18:24 +09:00
Taiki Endo 54df36a543
Fix fence on non-x86 arch and miri (#16) 2022-07-17 22:33:35 +09:00
Stjepan Glavina 83223b50a5 Remove PhantomData 2020-08-05 17:25:08 +02:00
Stjepan Glavina 0eab7ff973 Use a boxed slice instead of raw pointers 2020-08-04 19:02:03 +02:00
Stjepan Glavina e4a9db66f4 Optimize SeqCst fences 2020-07-22 17:57:03 +02:00
Greg Fitzgerald dc97271091 Remove redundant conditional 2020-07-21 15:36:58 -06:00
Stjepan Glavina 463ae0ea93 Initial commit 2020-05-27 21:31:05 +02:00