❗️ Оцените вопросы прошлой недели в двоичной системе
Anonymous Poll
25%
001
5%
010
20%
011
32%
100
26%
101
🤔2
❓ Какой механизм Go используется для реализации паттерна fan-in
Anonymous Poll
13%
Мьютекс
85%
Каналы
2%
Таймеры
2%
Интерфейсы
🤡39
❓ В чем ключевое отличие fan-out/fan-in от простого параллелизма
Anonymous Poll
62%
Fan-out/fan-in включает централизованный сбор результатов
11%
Fan-out/fan-in выполняет задачи последовательно
2%
Fan-out/fan-in не использует каналы
30%
Fan-out/fan-in использует мультипараллельную парадигму
❓ В каком случае изменения в срезе могут перестать быть видны в другом срезе
Anonymous Poll
6%
При изменении отдельного элемента среза
13%
При получении под-среза с помощью [a:b]
69%
При использовании append при полном заполнении capacity
17%
Изменения в любом случае будут видны
❓ В каком случае можно использовать пользовательские типы как ключи в мапе
Anonymous Poll
1%
Тип содержит только экспортируемые поля
85%
Тип состоит только из сравнимых полей
10%
Тип реализует интерфейс Stringer
6%
Тип является указателем
❓ Что обозначает параметр GOGC
Anonymous Poll
9%
Максимальный размер памяти, доступной приложению
73%
Процент прироста памяти перед запуском сборщика мусора
15%
Количество горутин в программе
6%
Версию компилятора Go
❓ Сколько верных ответов было у вас на этой неделе
Anonymous Poll
50%
5-7
17%
3-4
9%
1-2
24%
Ни одного, ну и вопросы!
🤡2
❓ Для каких объектов sync.Pool подходит лучше всего
Anonymous Poll
11%
Крупные долгоживущие структуры конфигурации
11%
Долгоживущие singletons
77%
Часто создаваемые, короткоживущие временные объекты
5%
Только сетевые соединения
❓ Как правильнее всего поступить с bytes.Buffer перед возвратом в sync.Pool
Anonymous Poll
13%
Ничего не делать, просто положить как есть
59%
Вызвать Reset() и затем положить в пул
25%
Обнулить указатель через buf = nil и положить в пул
6%
Освободить через runtime.Free()
❓ Почему использование sync.Pool для редких и дешёвых аллокаций обычно не даёт пользы
Anonymous Poll
8%
sync.Pool работает только при высоком уровне конкуренции
85%
Накладные расходы на пул могут быть выше, чем выгода от экономии аллокаций
6%
GC игнорирует такие объекты
2%
sync.Pool нельзя использовать для небольших объектов
❓ Что произойдёт, если положить в один sync.Pool значения разных типов, а при Get() делать жёсткий type assertion к одному типу
Anonymous Poll
13%
Компилятор не даст собрать код
9%
Get() автоматически приведёт тип к нужному
75%
Возможна паника в рантайме при неверном type assertion
4%
Значения других типов будут молча игнорироваться
❓ Что делает метод Get() у sync.Pool, если внутри нет ни одного объекта и поле New не задано
Anonymous Poll
14%
Паникует
18%
Блокируется, пока не появится объект
21%
Создаёт новый объект через reflect.New
48%
Возвращает nil
❓ Поставьте эмодзи, который ассоциируется с вопросами прошедшей недели
Anonymous Poll
24%
👍
17%
⚡️
11%
⭐️
30%
🤨
20%
😢
15%
😞
❓ Go операция atomic.CompareAndSwapInt32 используется для реализации lock-free алгоритмов. Как называется проблема, когда значение меняется с A на B, затем обратно на A
Anonymous Poll
3%
Deadlock
65%
ABA-проблема
23%
Race Condition
11%
Livelock
🔬 Вы когда-нибудь смотрели на код и думали: «Работает, но почему?»
А теперь представьте, что вы:
→ понимаете, почему модель учится слишком медленно или слишком быстро;
→ видите, какие данные реально влияют на предсказание, а какие — шум;
→ знаете, что происходит внутри нейронки.
4 декабря стартует курс «Математика для разработки AI-моделей».
Линал, оптимизация, матан, статистика — всё, что происходит внутри модели между input и output. Практика на Python. Живые разборы с экспертами из SberAI, ВШЭ, Wildberries&Russ.
3 задания + финальный проект. Без теории ради теории — только то, что реально используется в моделях.
🎁 Бонус: курс по школьной математике + тест (https://clc.to/Enohvw) уровня математики
👉 Записаться (https://clc.to/_p_6Pw)
А теперь представьте, что вы:
→ понимаете, почему модель учится слишком медленно или слишком быстро;
→ видите, какие данные реально влияют на предсказание, а какие — шум;
→ знаете, что происходит внутри нейронки.
4 декабря стартует курс «Математика для разработки AI-моделей».
Линал, оптимизация, матан, статистика — всё, что происходит внутри модели между input и output. Практика на Python. Живые разборы с экспертами из SberAI, ВШЭ, Wildberries&Russ.
3 задания + финальный проект. Без теории ради теории — только то, что реально используется в моделях.
🎁 Бонус: курс по школьной математике + тест (https://clc.to/Enohvw) уровня математики
👉 Записаться (https://clc.to/_p_6Pw)
❤1
❓ Как проверить, что переменная это указатель
Anonymous Poll
7%
var ok = (x == nil)
83%
var ok = reflect.TypeOf(x).Kind() == reflect.Ptr
8%
var ok = x instanceof pointer
8%
var ok = type(x) == "pointer"