Предпочтительный способ обработки параллелизма и синхронизации в Go — это горутины и каналы. Однако Go предоставляет более традиционные многопоточные процедуры в пакетах sync и sync/atomic.

Мьютексы

Мьютекс (взаимная исключающая блокировка) блокирует часть кода для одного потока за раз и используется для защиты общих ресурсов от неатомарных операций. Вот…