Mutex в Go — это структура из двух полей: state (int32) и sema (uint32). State хранит флаги locked, woken, starving и счётчик ожидающих. Sema — семафор ядра для блокировки горутин. Есть два режима: normal (попытка спинлока) и starvation (FIFO очередь). В starvation mode новые горутины не крадут лок у ожидающих.
Как устроен sync.Mutex внутри?
Senior
88 просмотровAFK Offer AI
Что такое timestamp with timezone?