...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Copyright © 2013 Vicente J. Botet Escriba, Tim Blechmann
Copyright © 2013-2019 Andrey Semashev
Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt).
Table of Contents
Boost.Sync is a collection of thread synchronization primitives. It provides
components like mutexes, conditional variables, locks and more, with interfaces
compatible with C++11 standard library and Boost.Thread
components, with some extensions and refinements. In particular, Boost.Sync
is not tied to a single time units library and instead contains an abstraction
layer, which allows different time unit libraries, like C++11 std::chrono
,
Boost.Chrono
and Boost.DateTime,
to be used interchangeably. In addition, Boost.Sync offers thread synchronization
components that are not available in C++11 standard library or Boost.Thread,
which can be useful in more specialized cases.
Boost.Sync focuses on performance and reduced dependencies. Unlike Boost.Thread, Boost.Sync does not support thread interruption and therefore does not impose the associated performance overhead. Most components do not require linking with other libraries, including Boost.Sync itself.
Boost.Sync is compatible with C++03 compilers, and will use features available in newer C++ revisions, as detected.