❓ Когда отправитель блокируется на буферизованном канале
Anonymous Poll
5%
Всегда, до момента чтения значения
89%
Только если буфер заполнен
2%
Никогда
5%
Только при размере буфера 1
❓ Как ведёт себя получатель в буферизованном канале
Anonymous Poll
12%
Никогда не блокируется
69%
Блокируется, если буфер пуст
17%
Блокируется, только если буфер полон
2%
Блокируется всегда
❓ Где хранится содержимое буфера буферизованного канала
Anonymous Poll
14%
В стеке отправителя
7%
В стеке получателя
71%
В кольцевом буфере внутри структуры hchan
13%
В глобальном heap без структуры
❓ Что происходит с данными при небуферизованной передаче, когда есть ожидающий получатель
Anonymous Poll
18%
Копируются в кольцевой буфер и оттуда читаются
6%
Переносятся через глобальную очередь событий
70%
Копируются напрямую между стеками горутин
10%
Перемещаются с помощью memcpy внутри heap
❓ Что произойдёт, если отправить в полный буферизованный канал без конкурентного получателя
Anonymous Poll
7%
Паника
4%
Потеря данных
75%
Блокировка отправителя до освобождения места
17%
Системный deadlock
❤1
❓ Сколько элементов может быть в бакете у мапы
Anonymous Poll
2%
4
49%
8
7%
16
1%
24
8%
32
37%
Бесконечно
👍2
❓ От чего зависит размерность типа int
Anonymous Poll
6%
От версии компилятора
88%
От архитектуры платформы
2%
От количества переменных в коде
1%
От настроек IDE
6%
От переданных аргументов при старте программы
👍1
👍1
❓ Какой размер у переменной, типом которой является интерфейс на x64 архитектуре
Anonymous Poll
8%
4 байта
39%
8 байт
28%
16 байт
26%
Зависит от интерфейса
🌐 HTTP уже не тянет? В микросервисной архитектуре запросы множатся, скорость падает, а код превращается в клубок зависимостей. Настало время познакомиться с инструментом, который решает эти проблемы изящно — gRPC.
📗 На открытом уроке вы разберёте, как работает этот фреймворк, почему он вытесняет REST и как описывать API с помощью Protobuf. Вы узнаете, как обеспечить обратную совместимость между сервисами, повысить производительность и упростить взаимодействие микросервисов.
❗️После вебинара вы сможете строить быстрые и надёжные коммуникации между сервисами на Go — с чистой архитектурой и минимумом боли.
➡️ 12 ноября в 20:00 МСК. Открытый вебинар проходит в преддверии старта курса «Golang Developer. Professional». Регистрируйтесь и узнайте, почему gRPC становится стандартом нового поколения для Go-разработчиков: https://clck.ru/3QB9xp
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
📗 На открытом уроке вы разберёте, как работает этот фреймворк, почему он вытесняет REST и как описывать API с помощью Protobuf. Вы узнаете, как обеспечить обратную совместимость между сервисами, повысить производительность и упростить взаимодействие микросервисов.
❗️После вебинара вы сможете строить быстрые и надёжные коммуникации между сервисами на Go — с чистой архитектурой и минимумом боли.
➡️ 12 ноября в 20:00 МСК. Открытый вебинар проходит в преддверии старта курса «Golang Developer. Professional». Регистрируйтесь и узнайте, почему gRPC становится стандартом нового поколения для Go-разработчиков: https://clck.ru/3QB9xp
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
❓ Как объявить алиас для типа int
Anonymous Poll
68%
type MyInt int
21%
type MyInt = int
9%
alias MyInt int
3%
var MyInt = int
🤡7🤯1🥴1
❓ Зачем используют алиасы при импорте пакетов
Anonymous Poll
3%
Чтобы ускорить компиляцию
1%
Для создания новых пакетов
97%
Для предотвращения конфликтов имен
1%
Для уменьшения размера бинарника
🌭2