Golang | Тесты
2.91K subscribers
24 photos
336 links
Cайт easyoffer.ru
Реклама @easyoffer_adv
ВП @easyoffer_vp

Вопросы собесов t.me/+ajHN0OKU1okyZDky
Задачи t.me/+MURwpbl6Nq9kYzJi
Вакансии t.me/+mX_RBWjiMTExODUy
Download Telegram
🤔 Какие последствия чтения из закрытого канала?

1. Чтение возможно – если в канале остались данные, они будут возвращены.
2. Получение zero-value – если канал пуст, возвращается нулевое значение типа (0 для int, "" для string и nil для указателей).
3. ok == false – можно проверить факт закрытия с помощью второго параметра при чтении (val, ok := <-chan).


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥3🤯1💊1
🤔 В каких случаях происходит deadlock?

1. Горутина ждет данные, а никто не пишет в канал (<-chan, но нет chan <-).
2. Основная горутина завершилась, а другие ждут завершения.
3. Все горутины заблокированы на ожидании данных (select { case <-ch1: case <-ch2: } – если ни один не отправляет данные).
4. Закрыли канал, но кто-то пытается в него записать – вызывает panic.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8💊5🔥3
🤔 Как в Go можно реализовать агрегацию без использования встроенных типов?
Anonymous Quiz
17%
Использование пакетов
60%
Использование интерфейсов
19%
Использование анонимных функций
4%
Использование пакета sync
🔥1😁1
🤔 Что означает deadlock при работе с goroutine?

Это состояние, при котором все горутины ожидают события, которое не наступит. Go детектирует deadlock и вызывает panic, если основная горутина заблокирована на ожидании данных из канала, но нет активных писателей.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
🤔 Какова максимальная емкость среза, к которому можно применить append?
Anonymous Quiz
9%
1024 элемента
32%
Зависит от системы
49%
Нет ограничений
9%
65536 элементов
🤔 Как обозначается доступ к полю структуры в Go?
Anonymous Quiz
8%
структура:поле
85%
структура.поле
2%
структура->поле
5%
структура[поле]
👀4🤯21💊1
🤔 Что такое nil-канал и что будет, если писать и читать из него?

Это неинициализированный канал (var ch chan int).
- Чтение из nil-канала – блокирует горутину навсегда.
- Запись в nil-канал – блокирует горутину навсегда.
Nil-каналы используются для динамического управления каналами в select, когда временно не нужно обрабатывать канал.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥31👀1
🤔 Что произойдет, если попытаться обратиться к неэкспортируемому полю структуры из другого пакета?
Anonymous Quiz
2%
Код скомпилируется без ошибок
7%
Будет предупреждение, но код скомпилируется
87%
Произойдет ошибка компиляции
5%
Поле будет автоматически экспортировано
👍4
🤔 Какой интерфейс в Go обрабатывает HTTP-запросы?
Anonymous Quiz
31%
http.Request
14%
http.ResponseWriter
47%
http.Handler
8%
http.ServeMux
🤔 Что будет, если закрыть уже закрытый канал?

Закрытие закрытого канала вызывает panic.
Рекомендуется не закрывать канал дважды и проверять, закрыт ли он (recover или sync.Once для защиты от дублирующего закрытия).


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥1
🤔 Какая функция в пакете net/http Go используется для запуска HTTP-сервера?
Anonymous Quiz
78%
http.ListenAndServe
13%
http.Serve
7%
http.Handle
3%
http.HandleFunc
3
🤔 Какой тип в Go используется для хранения результата SQL-запроса?
Anonymous Quiz
23%
sql.Row
24%
sql.Rows
23%
sql.Result
29%
sql.QueryResult
🤔10👍2
🤔 Как расшифровывается аббревиатура ACID?

ACID – это принципы целостности транзакций в базах данных:
- A (Atomicity) – транзакция либо выполняется полностью, либо не выполняется вовсе.
- C (Consistency) – после транзакции БД остается в согласованном состоянии.
- I (Isolation) – параллельные транзакции не влияют друг на друга.
- D (Durability) – данные сохраняются даже в случае сбоя системы.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥21
🤔 Какой метод в пакете database/sql Go используется для получения одной строки из результата запроса?
Anonymous Quiz
27%
GetRow()
8%
Fetch()
55%
QueryRow()
10%
SelectOne()
3😁1
🤔 Какой интерфейс в Go гарантирует, что транзакция будет выполнена или отменена полностью?
Anonymous Quiz
18%
DB
57%
Tx
12%
Execer
13%
Queryer
💊7😁21🔥1🤔1
🤔 Какие бывают типы изоляции транзакций?

1. Read Uncommitted – транзакция читает несохраненные изменения других транзакций (грязное чтение).
2. Read Committed – транзакция видит только сохраненные изменения других транзакций.
3. Repeatable Read – транзакция видит одинаковые данные при повторных запросах, но возможны фантомные чтения.
4. Serializable – полный контроль над данными, транзакции выполняются последовательно, но снижается производительность.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥3