Golang вопросы собеседований
13.7K subscribers
657 photos
5 videos
1 file
463 links
@notxxx1 - админ

@Golang_google - Golang для разработчиков

@itchannels_telegram - 🔥лучшие из ит

@golangl - chat

@golangtests - golang tests

@golang_jobsgo - go chat jobs

@ai_machinelearning_big_data - AI

@data_analysis_ml

РКН: clck.ru/3FmtKd
加入频道
Тимлид, вам слово📣 Приглашаем на митап по управлению командами

Воспользуйтесь летним затишьем, чтобы посмотреть на практику коллег, промониторить «погоду» в своей команде и, возможно, обновить стратегию работы. Обсудим дела тимлидские на офлайн-встрече TeamLead Talks в офисе Lamoda.  

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

🍕 Наладить непринужденное общение помогут нетворкинг-разогрев, игра «IT-бункер», закуски и напитки.

Присоединяйтесь к Team Lead Talks:
📅 2 июля в 19:00.
📍 Офлайн, Москва, офис Lamoda.  
🔗Регистрируйтесь по ссылке, количество мест ограничено.

#реклама
О рекламодателе
👣 Что выведет код ?



package main

func oneStep(yield func() bool) {
yield()
}

func f() {
for range oneStep {
print("f ")
recover()
}
}

func g() {
for range 1 {
print("g ")
recover()
}
}

func checkPanic(loop func(), c chan<- struct{}) {
defer func() {
println(recover() != nil)
c <- struct{}{}
}()
defer loop()
panic(123)
}

func main() {
c := make(chan struct{}, 1)
go checkPanic(f, c)
<-c
go checkPanic(g, c)
<-c
}




🔗 Ответ

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
🔌 go-redis/cache — эффективное кэширование для Golang. Библиотека от создателей go-redis предлагает удобный способ организации двухуровневого кэша с Redis в качестве основного хранилища и локальным кэшем на основе TinyLFU.

Библиотека использует автоматическую сериализацию структур через MessagePack и поддержка распределённых Redis-конфигураций. Также интересно реализован механизм однократного вычисления значения для параллельных запросов через метод Once. Это упрощает работу с горячими ключами, когда несколько goroutines одновременно запрашивают одни и те же данные.

🤖 GitHub

@golang_interview