mirror of
https://github.com/gabime/spdlog.git
synced 2025-09-30 02:19:35 +08:00
stdout_loggers now thread safe across all instances (share same stdout_sink_mt)
This commit is contained in:
@@ -37,9 +37,14 @@ namespace sinks
|
||||
template <class Mutex>
|
||||
class stdout_sink : public ostream_sink<Mutex>
|
||||
{
|
||||
using MyType = stdout_sink<Mutex>;
|
||||
public:
|
||||
stdout_sink() : ostream_sink<Mutex>(std::cout, true) {}
|
||||
|
||||
static std::shared_ptr<MyType> instance()
|
||||
{
|
||||
static std::shared_ptr<MyType> instance = std::make_shared<MyType>();
|
||||
return instance;
|
||||
}
|
||||
};
|
||||
|
||||
typedef stdout_sink<details::null_mutex> stdout_sink_st;
|
||||
@@ -49,8 +54,15 @@ typedef stdout_sink<std::mutex> stdout_sink_mt;
|
||||
template <class Mutex>
|
||||
class stderr_sink : public ostream_sink<Mutex>
|
||||
{
|
||||
using MyType = stderr_sink<Mutex>;
|
||||
public:
|
||||
stderr_sink() : ostream_sink<Mutex>(std::cerr, true) {}
|
||||
static std::shared_ptr<MyType> instance()
|
||||
{
|
||||
static std::shared_ptr<MyType> instance = std::make_shared<MyType>();
|
||||
return instance;
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
typedef stderr_sink<std::mutex> stderr_sink_mt;
|
||||
|
Reference in New Issue
Block a user