123456789101112131415161718 |
- 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.
|