34template<async_overflow_policy OverflowPolicy = async_overflow_policy::block>
37 template<
typename Sink,
typename... SinkArgs>
44 auto &mutex = registry_inst.tp_mutex();
46 auto tp = registry_inst.get_tp();
50 registry_inst.set_tp(tp);
55 registry_inst.initialize_logger(new_logger);
63template<
typename Sink,
typename... SinkArgs>
69template<
typename Sink,
typename... SinkArgs>
void set_tp(std::shared_ptr< thread_pool > tp)
std::shared_ptr< thread_pool > get_tp()
static registry & instance()
static const size_t default_async_q_size
std::shared_ptr< spdlog::details::thread_pool > thread_pool()
void init_thread_pool(size_t q_size, size_t thread_count, std::function< void()> on_thread_start)
std::shared_ptr< spdlog::logger > create_async(std::string logger_name, SinkArgs &&...sink_args)
std::shared_ptr< spdlog::logger > create_async_nb(std::string logger_name, SinkArgs &&...sink_args)
static std::shared_ptr< async_logger > create(std::string logger_name, SinkArgs &&...args)