-
Notifications
You must be signed in to change notification settings - Fork 5k
Thread Safety
Gabi Melman edited this page Apr 1, 2025
·
3 revisions
The following functions should not be called concurrently from multiple threads on the same logger object:
set_error_handler(log_err_handler);-
logger::sinks()- returns a reference to a non thread safe vector, so don't modify it concurrently (e.g.logger->sinks().push_back(new_sink);)
Note: This restriction applies to all kind of loggers ("_mt" or "_st").
To create thread safe loggers, use the _mt factory functions.
For example:
auto logger = spdlog::basic_logger_mt(...);To create single threaded loggers, use the _st factory functions.
For example:
auto logger = spdlog::basic_logger_st(...);-
Thread safe sinks: sinks ending with
_mt(e.gdaily_file_sink_mt) -
Non thread safe sinks: sinks ending with
_st(e.gdaily_file_sink_st)
©gabime 2023-2024 spdlog. All Rights Reserved.