crossbeam-deque
Concurrent work-stealing deque
0.8.7
584M downloads/mo
#167 most downloaded on crates.io
crossbeam-rs/crossbeam
What this package is like to depend on
Last release 1 months ago
06 Jul 2026
Ships fairly regularly
a new release about every 9 months
Nearly every release is documented
notes for 22 of 22 stable releases
5 versions withdrawn
withdrawn after publishing
9 years old
27 releases · first in 2017
1 release in the last 12 months
see the full history below
Release timeline
27 releases · Nov 2017 to Jul 2026Releases
latest 27-
0.8.706 Jul 2026Release notes
Open source →- Optimize
Worker::push,Stealer::steal_batch*,Injector::steal_batch*. (#1233)
Release notes
Open source →- Optimize
Worker::push,Stealer::steal_batch*,Injector::steal_batch*. (#1233)
- Optimize
-
0.8.615 Dec 2024Release notes
Open source →Release notes
Open source →- Fix stack overflow when pushing large value to
Injector. (#1146, #1147, #1159)
- Fix stack overflow when pushing large value to
-
0.8.508 Jan 2024 -
0.8.413 Dec 2023 -
0.8.328 Feb 2023Release notes
Open source →- Add
Stealer::{steal_batch_with_limit, steal_batch_with_limit_and_pop}methods. (#903) - Add
Injector::{steal_batch_with_limit, steal_batch_with_limit_and_pop}methods. (#903)
- Add
-
0.8.223 Jul 2022 -
0.8.130 Jul 2021 -
0.8.012 Oct 2020 withdrawnRelease notes
Open source →- Bump the minimum supported Rust version to 1.36.
- Bump
crossbeam-channelto0.5. - Bump
crossbeam-dequeto0.8. - Bump
crossbeam-epochto0.9. - Bump
crossbeam-queueto0.3. - Bump
crossbeam-utilsto0.8.
Release notes
Open source →Note: This release has been yanked. See GHSA-pqqp-xmhj-wgcw for details.
- Bump the minimum supported Rust version to 1.36.
- Add
Worker::len()andInjector::len()methods. - Add
std(enabled by default) feature for forward compatibility.
-
0.7.430 Jul 2021 -
0.7.322 Feb 2020 withdrawnRelease notes
Open source →- Fix breakage with nightly feature due to rust-lang/rust#65214.
- Bump
crossbeam-channelto0.4. - Bump
crossbeam-epochto0.8. - Bump
crossbeam-queueto0.2. - Bump
crossbeam-utilsto0.7.
Release notes
Open source →Note: This release has been yanked. See GHSA-pqqp-xmhj-wgcw for details.
- Stop stealing from the same deque. (#448)
- Fix unsoundness issues by adopting
MaybeUninit. (#458)
-
0.7.206 Nov 2019 withdrawnRelease notes
Open source →- Bump
crossbeam-channelto0.3.9. - Bump
crossbeam-epochto0.7.2. - Bump
crossbeam-utilsto0.6.6.
Release notes
Open source →Note: This release has been yanked. See GHSA-pqqp-xmhj-wgcw for details.
- Bump
crossbeam-epochto0.8. - Bump
crossbeam-utilsto0.7.
- Bump
-
0.7.129 Jan 2019 withdrawnRelease notes
Open source →Note: This release has been yanked. See GHSA-pqqp-xmhj-wgcw for details.
- Bump the minimum required version of
crossbeam-utils.
- Bump the minimum required version of
-
0.7.028 Jan 2019 withdrawnRelease notes
Open source →- Remove
ArcCell,MsQueue, andTreiberStack. - Change the interface of
ShardedLockto matchRwLock. - Add
SegQueue::len(). - Rename
SegQueue::try_pop()toSegQueue::pop(). - Change the return type of
SegQueue::pop()toResult. - Introduce
ArrayQueue. - Update dependencies.
Release notes
Open source →Note: This release has been yanked. See GHSA-pqqp-xmhj-wgcw for details.
- Make
Worker::pop()faster in the FIFO case. - Replace
fifo()nadlifo()withWorker::new_fifo()andWorker::new_lifo(). - Add more batched steal methods.
- Introduce
Injector<T>, a MPMC queue. - Rename
Steal::DatatoSteal::Success. - Add
Steal::or_else()and implementFromIteratorforSteal. - Add
#[must_use]toSteal.
- Remove
-
0.6.316 Dec 2018 -
0.6.209 Nov 2018 -
0.6.109 Aug 2018Release notes
Open source →- Change a few
Relaxedorderings toReleasein order to fix false positives by tsan.
- Change a few
-
0.6.009 Aug 2018Release notes
Open source →- Add
Stealer::steal_manyfor batched stealing. - Change the return type of
poptoPop<T>so that spinning can be handled manually.
- Add
-
0.5.202 Aug 2018 -
0.5.107 Jul 2018 -
0.5.006 Jul 2018Release notes
Open source →- Update
crossbeam-channelto 0.3. - Update
crossbeam-utilsto 0.6. - Add
AtomicCell,SharedLock, andWaitGroup.
Release notes
Open source →- Add two deque constructors :
fifo()andlifo(). - Update
randto0.5.3. - Rename
DequetoWorker. - Return
Option<T>fromStealer::steal. - Remove methods
Deque::lenandStealer::len. - Remove method
Deque::stealer. - Remove method
Deque::steal.
- Update
-
0.4.112 Jun 2018 -
0.4.012 Jun 2018Release notes
Open source →- Update
crossbeam-epochto0.4.2. - Update
crossbeam-utilsto0.4.0. - Require minimum Rust version 1.25.
- Update
-
0.3.104 May 2018Release notes
Open source →- Add
Deque::capacity. - Add
Deque::min_capacity. - Add
Deque::shrink_to_fit. - Update
crossbeam-epochto0.3.0. - Support Rust 1.20.
- Shrink the buffer in
Deque::pushif necessary.
- Add
-
0.3.010 Feb 2018 -
0.2.010 Feb 2018 -
0.1.129 Nov 2017 -
0.1.026 Nov 2017