Отладочный макрос перестал перемешивать вывод из разных потоков

25.01.2026

Отладочный макрос с несколькими аргументами теперь печатает их одним вызовом, а не собирает строку и пишет по частям.

Что было не так

Раньше макрос с несколькими аргументами выводил каждый по очереди, разделяя их. При выводе из двух потоков строки перемешивались: половина вывода одного потока оказывалась между половинами вывода другого.

В многопоточном коде отладочный вывод — основной инструмент. Испорченный вывод хуже отсутствия вывода: по нему судят о том, что произошло, а он показывает чушь.

Как стало

Все аргументы печатаются одним действием. Перемешивание невозможно — либо выводится всё, либо ничего.

Оригинал

Instead of formatting everything into a string, this PR makes multi-expression dbg! expand into multiple nested matches, with the final match containing a single eprint!.

Упоминаний: 1 · Просмотров: 3