The Reactive C++ Toolbox is an open source library of C++20 components designed for efficient, asynchronous network applications on the Linux platform.
Not calling, flag / setting reset on every log line yields significant performance benefits. This does mean that changes to io fields (width, spacing, good, etc) will persist across log calls, and that it's now the responsibility of the caller to restore whatever modifiers are set. OStringStream reuse is now somewhat similar to the stringstream reuse idiom:
Not calling, flag / setting reset on every log line yields significant performance benefits. This does mean that changes to io fields (width, spacing, good, etc) will persist across log calls, and that it's now the responsibility of the caller to restore whatever modifiers are set. OStringStream reuse is now somewhat similar to the stringstream reuse idiom:
with
Benchmark results (Before/After):