2
0
mirror of https://github.com/boostorg/log.git synced 2026-01-19 04:22:09 +00:00
Andrey Semashev fdcd3a233c Reimplemented adaptive_mutex using Boost.Atomic.
adaptive_mutex now uses Boost.Atomic on all platforms that support
lock-free atomics native waiting/notifying operations for unsigned int
and pthreads on the other platforms. Windows always uses Boost.Atomic.

The new implementation blocks the thread after a number of attempts
to acquire the lock with spinning backoff. This should reduce CPU load
if for some reason the thread that owns the lock is holding it for a
long time (which typically should not happen, since adaptive_mutex is
currently only used in threadsafe_queue, which doesn't hold the lock
for too long, unless the holder gets preempted).

The change may be significant on POSIX systems, which previously always
used pthreads, and performance characteristics of pthread_mutex_t could
have been different from our Boost.Atomic-based implementation.
2025-06-12 00:22:37 +03:00
2013-04-13 12:30:25 +00:00

Boost.Log

Boost.Log, part of collection of the Boost C++ Libraries, provides tools for adding logging to libraries and applications.

Directories

  • build - Boost.Log build scripts
  • config - Boost.Log build configuration code and scripts
  • doc - QuickBook documentation sources
  • example - Boost.Log examples
  • include - Interface headers of Boost.Log
  • src - Compilable source code of Boost.Log
  • test - Boost.Log unit tests

More information

Build status

Branch GitHub Actions AppVeyor Test Matrix Dependencies
master GitHub Actions AppVeyor Tests Dependencies
develop GitHub Actions AppVeyor Tests Dependencies

License

Distributed under the Boost Software License, Version 1.0.

Description
Mirrored via gitea-mirror
Readme 3.9 MiB
Languages
C++ 99%
CMake 1%