Текстовый конспект к видео:
Boosty: boosty.to/deferpanic/posts/ad...
Patreon: / konspekt-k-video-73674718
Полезные ссылки вы найдете в нашем канале в Телеграме:
Telegram: t.me/deferpanic
Discord: / discord
Go - это язык, который не просто обладает хорошими инструментами, позволяющими использовать всю мощь многоядерных процессоров с помощью параллельного программирования. Go - это язык, который проектировался в первую очередь для конкурентных и параллельных вычислений. Поэтому я не могу пройти мимо данной темы.
В материале мы разберёмся как с базовыми инструментами параллельных вычислений (горутины, select и каналы), так и с примитивами синхронизации горутин (мьютексы, атомики, sync.Map, WaitGroup).
❤️ Реквизиты, если у вас есть желание поддержать меня и развитие канала:
Boosty - boosty.to/deferpanic
Patreon - / deferpanic
Donation Alerts - donationalerts.com/r/deferpanic
ETH - tomakado.eth
TON - tomakado.ton
BTC - 19xwFstmVQsVYqZP64iMVg1StLNSah6Smo
00:00 - Вступление
00:55 - Что такое параллельные вычисления
03:25 - Процессы, потоки, корутины и горутины
05:26 - Как планировщик Go управляет горутинами
07:34 - Синхронизация горутин
09:52 - Буферизованные каналы
11:10 - Закрытие канала
11:42 - Итерирование по каналам
12:10 - Конструкция select
13:04 - Аксиомы каналов
13:37 - Конкурентный доступ и состояние гонки
16:25 - Примитивы синхронизации
16:46 - Mutex
18:40 - Mutex. Техника безопасности
19:23 - RWMutex
19:57 - Атомики (атомарные счётчики)
20:49 - sync.Map
21:11 - WaitGroup
21:48 - Достойны упоминания: sync.Pool и sync.Cond
22:35 - Финал
#ityoutubersru #ityoutubers #golang #go #concurrency
18 май 2024