# Module futures::sync [−] [src]

Future-aware synchronization

This module, which is modeled after `std::sync`, contains user-space synchronization tools that work with futures, streams and sinks. In particular, these synchronizers do not block physical OS threads, but instead work at the task level.

More information and examples of how to use these synchronization primitives can be found online at tokio.rs.

## Modules

mpsc | A multi-producer, single-consumer, futures-aware, FIFO queue with back pressure.
oneshot | A one-shot, futures-aware channel

## Structs

BiLock | A type of futures-powered synchronization primitive which is a mutex between two possible owners.
BiLockAcquire | Future returned by `BiLock::lock` which will resolve when the lock is acquired.
BiLockAcquired | Resolved value of the `BiLockAcquire<T>` future.
BiLockGuard | Returned RAII guard from the `poll_lock` method.

# Help

## Keyboard Shortcuts

`?`
  Show this help dialog
`S`
  Focus the search field
`↑`
  Move up in search results
`↓`
  Move down in search results
`↹`
  Switch tab
`⏎`
  Go to active search result
`+`
  Expand all sections
`-`
  Collapse all sections

## Search Tricks

Prefix searches with a type followed by a colon (e.g. `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g. `vec -> usize` or `* -> vec`)