Как на самом деле устроены каналы в Golang? | Golang channels internals
Разбираемся со внутренним устройством каналов: как реализована потокобезопасноть, как в буферизированном канале хранятся данные, какие интересные оптимизации там есть, как работает оператор Select, как каналы закрываются и др.
----
❤️ Если у вас есть желание поддержать развитие канала:
- 👾 Мой канал в Telegram:
- 🗣 Чат в Telegram: zsSZ63wEJDs3NGVi
- 👀 Golang Digest: - мои регулярные подборки интересных материалов по Go.
----
Другие мои видео про внутреннюю реализацию Go:
Map:
Slice:
Тайминги:
00:00 Вступление
00:38 Какие свойства каналов интересно изучить?
01:22 Проектирование каналов
01:32 В какой области памяти хранятся каналы?
02:00 Структура канала
04:08 Реализация свойств: goroutine-safe и FIFO
05:04 Как работают буфер канала и mutex
07:18 Передача данных в канал
08:21 Получение данных из канала
08:38 Переполнение буфера
09:05 Как устроен планировщик (Scheduler)
10:14 Как поставить горутину на паузу
10:56 Как разбудить горутину: очередь спящих горутин - sendq
13:49 Чтение из переполненного канала
15:57 Пробуждение спящей горутины Sender
17:43 Чтение из пустого канала
18:44 Передача данных напрямую между стэками двух горутин
19:11 Небуферизированные каналы
19:37 Итоги по изучению интересных свойств каналов
20:35 Изучаем код реализации каналов
28:22 Изучаем поведение канала вживую с помощью дебагера
35:23 Как работает Select
37:14 Закрытие канала
38:13 Код закрытия канала
39:20 Итоги: почему каналы спроектированны именно так?
40:48 Заключение
#golang #ntuzov
1 view
590
277
7 months ago 00:05:14 1
Мечтай! Мотивационное видео.
7 months ago 00:07:22 1
Салат который приносит миллионный доход в ресторанах #салатсбаклажанами #баклажаны #салат
7 months ago 01:24:11 1
Как сейчас жить в России? Депрессия. Монахи и музыка. Чародейство и молитвы | Монах Андроник | Афон
7 months ago 01:11:31 1
“Нас тупо ИСПОЛЬЗОВАЛИ!“ // Украинец про войну, Зеленского, Лукашенко и жизнь в Англии
7 months ago 01:19:31 1
Снижаем биологический возраст. Выпуск 14. Школа Долгой Жизни Михаила Советова.
7 months ago 00:34:40 1
Дело Салтанат Нукеновой / Проблема БЫТОВОГО НАСИЛИЯ в Казахстане
7 months ago 00:01:17 1
Как Путин говорил о том, что пенсионный возраст не повысят
7 months ago 00:11:14 1
Галилео. Диспетчеры
7 months ago 00:14:16 1
СМОТРЕТЬ ВСЕМ УЧИТЕЛЯМ🔥ВАМ НАДО СДЕЛАТЬ ВЫБОР
7 months ago 00:19:15 1
РАЗОБЛАЧЕНИЕ: Топ-5 МИФОВ о K-POP, которые ПОРА ЗАБЫТЬ! (хейтерам смотреть обязательно)
7 months ago 00:18:31 1
Заработок денег Albion Online | Как заработать серебро для продажи на Funpay | Инструкция по РМТ
7 months ago 00:26:18 1
Пошаговая инструкция, как собрать кубик Рубика 3х3
7 months ago 00:03:24 1
“Как мы будем туда возвращаться?“ Жители затопленных районов Орска
7 months ago 00:00:00 1
10 Апреля! Авторский тренинг от долларового миллионера! Начало в 17:10 Москвы!
7 months ago 01:15:53 1
Гордон. Конец войны за 24 часа, член Путина, Макрон идет в бой, бунт в Китае, дамба из говна и палок
7 months ago 00:03:50 1
группа Тайфун - В стране далекой... Генералы песчаных карьеров
7 months ago 00:03:53 1
Торт “Идеал“: дежурный праздничный рецепт за считанные минуты
7 months ago 00:07:04 1
🔴Мясо, Яйца, Сыр поедает Микрофлора и производится ТМАО🔥 - Доктор Майкл Грегер
7 months ago 00:33:07 1
Кто провоцирует Майдан/ Роль мигрантов/Интервью с Евгением Федоровым
7 months ago 00:02:01 1
Анна Попова. Об обязательных нормативах гормонов и дополнительный ряд антибиотиков в питьевой воде.
7 months ago 00:26:52 1
Как Связать Спицами Круглый Вырез без Ступенек и без Дырочек
7 months ago 00:00:56 1
#rus Winx / Клип / Мне не страшно / Скай и Торен / WINX CLUB 🎶🔊✨
7 months ago 00:08:09 1
КВАНТОВОЕ ИСЦЕЛЕНИЕ ТЕЛА ЗВУКОМ ТИБЕТСКИХ ЧАШ (все 9 чакр) ГЦ
7 months ago 00:03:44 1
ЛУЧШЕЕ УПРАЖНЕНИЕ из Гимнастики для шеи Доктора Шишонина!