Горутины – главная киллер фича Go? О вытесняющей и кооперативной многозадачности / Немного IT #4

Горутины – главная киллер фича Go? О вытесняющей и кооперативной многозадачности / Немного IT #4

4.077 Lượt nghe
Горутины – главная киллер фича Go? О вытесняющей и кооперативной многозадачности / Немного IT #4
В новом выпуске мы обсудили технологические плюсы Go: главную киллерфичу – многопоточность, конкурентное/ассинхронное выполнение, и вытесняющую многозадачность. Поговорили о Goroutine, каналах, о кодогенерации и использовании профилировщиков. Иван Соловьёв https://solovev.one Михаил Непряхин https://t.me/neprja 0:24 Приветствие 0:40 Многопоточное программирование как киллер фича в Go 01:49 Концепция GMP модели 04:00 Сравнение с многопоточностью на C# 04:40 Как вытесняющая многозадачность выполняется в Go 07:18 Как это выглядит на Python и С# 09:22 Быстродействие горутин 11:57 Расшифровываем GMP 14:16 Переход от одной горутины к другой 16:45 Механизмы синхронизации между горутинами 17:31 Самые частые вопросы на собеседовании по Go (про каналы) 20:09 Про Nats 20:36 Еще пара слов о каналах (как в Go работает select) 22:14 Понимание defer в Go 26:22 Кейсы использования кодогенерации в Go 32:30 Go-swagger 33:53 Когда First API подход не приживается 36:21 Опыт использования pprof golang 39:27 Когда нужен debugger 42:06 Режимы профилировщика 43:46 Сравнение работы со строками в Rust 44:40 Механизм создания исключения и его отлова (panic и recover) и когда её стоит использовать 48:40 Еще немного о горутинах