Если вы используете многопоточность и ведете журналирование в качестве средства отладки, вам нужно искать библиотеку журналов, которая использует какой-то потокобезопасный, но разблокированный кольцевой буфер. Один буфер на поток, с глобальной блокировкой только в случае крайней необходимости.
Это позволяет избежать ведения журналов, вызывающих серьезные замедления в вашем программном обеспечении, и избежать создания ошибок, которые меняются при добавлении журнала отладки.
Если у него высокоскоростной сжатый двоичный формат журнала, который не тратит время на операции форматирования во время ведения журнала и некоторые приятные инструменты анализа и отображения журналов, это бонус.
Я бы дал ссылку на хороший код для этого, но у меня его нет. Я просто хочу один. :)