Можете объяснить принципы и методы ведения журналов в языке Go?
В языке Go для ведения журналов (логирования) обычно используется пакет log из стандартной библиотеки. Основные принципы и методы:
Читать ответПодготовка к интервью
866 вопросов по Golang с технических собеседований
Что проверяют на интервью
На странице собраны вопросы по Golang — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: go, backend, concurrency.
Каталог
В языке Go для ведения журналов (логирования) обычно используется пакет log из стандартной библиотеки. Основные принципы и методы:
Читать ответОсновное различие между интерпретируемыми языками (например, Python) и компилируемыми (например, Go) заключается в способе выполнения кода:
Читать ответВ Go слайсы — это динамические массивы, над которыми можно выполнять следующие операции:
Читать ответВ Go пакет context используется для передачи сквозных сигналов отмены, дедлайнов и других значений между горутинами и функциями.
Читать ответВ Go полиморфизм реализуется через интерфейсы.
Читать ответМногозадачность в Go реализована с помощью горутин (goroutines) и каналов (channels).
Читать ответОсновные недостатки стандартного логгера (log пакета):
Читать ответВ Go оператор select позволяет одновременно ждать операций на нескольких каналах.
Читать ответПланировщик Go запускает количество потоков, равное значению переменной окружения или параметра GOMAXPROCS, которая по умолчанию устанавливается равной количеству логических процессоров (CPU threads) на машине.
Читать ответsync.Pool в Go — это структура для хранения и повторного использования временных объектов, чтобы уменьшить нагрузку на сборщик мусора и повысить производительность.
Читать ответФункция copy в Go используется для копирования элементов из исходного среза (src) в целевой срез (dst).
Читать ответВ этом коде возможна ситуация бесконечного цикла. Переменная done изменяется в горутине, но в главной горутине нет механизма синхронизации или использования атомарных операций, чтобы гарантировать видимость изменений.
Читать ответ