18 lines
873 B
Plaintext
18 lines
873 B
Plaintext
Reckless is an extremely low-latency, high-throughput logging library.
|
|
It was created to perform extensive diagnostic logging without
|
|
worrying about performance. Other logging libraries boast the ability
|
|
to throw log messages away very quickly. Reckless boasts the ability
|
|
to keep them all, without worrying about the performance impact.
|
|
Filtering can and should wait until you want to read the log, or need
|
|
to clean up disk space.
|
|
|
|
The code generated at the call site consists of:
|
|
|
|
- Pushing the arguments on a thread-local queue. This has the same
|
|
cost as pushing the arguments on the stack for a normal function
|
|
call.
|
|
- Call to Boost.Lockless (NB: this is bundled with the library, not
|
|
an external dependency) to register the write request on a shared
|
|
lockless queue. The actual message formatting and writing is
|
|
performed asynchronously by a separate thread.
|