Пакет fmt использует рефлексию для определения типов аргументов и форматирования их в строки. Внутри есть пул pp-структур через sync.Pool, чтобы не аллоцировать буфер на каждый вызов Sprintf или Fprintf. Для кастомного форматирования типы могут реализовать интерфейсы Stringer или Formatter. Всё сводится к записи байт в io.Writer.
Как работает fmt пакет внутри?
Middle
211 просмотровAFK Offer AI
Что такое or-done channel?