Обычно я не пишу комментарии Но в этом видео чувствуется мощная подготовка и проделанная работа, а заодно и классная подача С удовольствием остальные мини-лекции хочу посмотреть и на практике попробовать эти знания
Отличная подача, очень понравилось что сразу упомянули виртуализацию аппаратной части, т.е. что мы не оперируем низкоуровневыми терминами ядро и т.д. Это сильно упростит новичкам понимание ибо из-за похожей терминологии рантайма го, в своё время часто путался Респект
Спасибо за видео. Хотел бы уточнить, на 11:00 было сказано , что если добавить еще одну запись в канал , но при этом не добавлять еще одно чтение , то будет дедлок. На самом деле в этом примере, даже если добавить еще одно чтение дедлок все равно возникнет при записи 5 элемента, до чтения просто не дойдем.
Горутины корректнее сравнивать не с корутинами, а с файберами, которые умеют не только в кооперативность, но и в вытеснение. Ну и плюс шедулер, но про это в видео есть :)
20:40 тут нету синхронизации. Мы все еще можем прочитать сначало из одной горутины, переключиться на другую, прочитать из другой еще до того как первая обновит значение. При таком подходе баланс точно так же может уйти в минус
Тестирование, профилирование, обработка ошибок. Это если говорить только про Go. Но я хочу еще парочку более общих форматов попробовать. Как они сформулируются во что-то понятное, расскажу о них в телеге уже.
@@deferpanic обработка ошибок было бы очень интересно. Чувствуется что тема не раскрыта в русскоязычном ютубе. А так хочется разобраться не читая скучные лонгриды )
21:17 а можно ли в данной ситуации сделать wg.Add(len(urls)) единожды, перед запуском цикла? если так, то почему так делать не стоит? спасибо за видео!
Привет! Правильно ли я понял, что мьютекс объявляется в структуре по значению, при этом явная инициализация (например, в функции-конструкторе) не требуется?
@@deferpanic По факту, можно хранить ссылку, но обязательно, чтобы все методы были с ссылочным ресивером. Но, тогда, придется выполнять явную инициализацию в функции-конструкторе
Есть ещё один краевой случай: если вы разыменуете ссылку на структуру, чтобы сделать копию, например, то ссылка на мьютекс в копии будет всё ещё та же.
Обычно я не пишу комментарии
Но в этом видео чувствуется мощная подготовка и проделанная работа, а заодно и классная подача
С удовольствием остальные мини-лекции хочу посмотреть и на практике попробовать эти знания
На моей памяти это один из самых мощнейших и самых легко впитываемых видосов по более глубокое устройство Go. Лучший!
Классный материал, на уровне англоязычных туторилов
Спасибо за видео! Очень познавательно!
Лучшее видео по этой теме, что я видел в интернете. Есть смысл на бусти подписаться!
В примере 10:55 при отправлении пятого значения в канал будет дедлок даже если добавить принт, поскольку главная горутина заблокируется
Отличная подача, очень понравилось что сразу упомянули виртуализацию аппаратной части, т.е. что мы не оперируем низкоуровневыми терминами ядро и т.д.
Это сильно упростит новичкам понимание ибо из-за похожей терминологии рантайма го, в своё время часто путался
Респект
Спасибо за видео. Хотел бы уточнить, на 11:00 было сказано , что если добавить еще одну запись в канал , но при этом не добавлять еще одно чтение , то будет дедлок.
На самом деле в этом примере, даже если добавить еще одно чтение дедлок все равно возникнет при записи 5 элемента, до чтения просто не дойдем.
Спасибо! Очень качественно и проработано!
Горутины корректнее сравнивать не с корутинами, а с файберами, которые умеют не только в кооперативность, но и в вытеснение. Ну и плюс шедулер, но про это в видео есть :)
очень годно
Отличная подача материала, а так же качество презентации
спасибо тебе огромное за это мега полезное видео!
Спасибо, очень познаваельно для go-джуна
Спасибо! Многое понял!
Чудесно звучит 🎉
Когда будет продолжение этой темы разговора
Спасибо за обзор👍👍👍, жду продолжение.
Отличное видео, спасибо вам.
Вау, классное видео. Спасибо!
20:40 тут нету синхронизации. Мы все еще можем прочитать сначало из одной горутины, переключиться на другую, прочитать из другой еще до того как первая обновит значение. При таком подходе баланс точно так же может уйти в минус
Поначалу рассказывал нормально, а в последние 5 минут пролетел галопом по Европам.
Почти как в лекции про мосты из "Как я встретил вашу маму"
13:26
4 аксиома действительна только для небуферизированных каналов
func main() {
ch := make(chan int, 1)
ch
Спасибо, как всегда на уровне!
Какую тему следующую планируешь разобрать?
Вариантов несколько, пока определяюсь )
@@deferpanic а какие?)
Тестирование, профилирование, обработка ошибок. Это если говорить только про Go. Но я хочу еще парочку более общих форматов попробовать. Как они сформулируются во что-то понятное, расскажу о них в телеге уже.
@@deferpanic было бы классно про scheduler полный разборчик когда-нибудь
@@deferpanic обработка ошибок было бы очень интересно. Чувствуется что тема не раскрыта в русскоязычном ютубе. А так хочется разобраться не читая скучные лонгриды )
понравилось название канала :D
Видео супер
19:11 Сюрпризы будут с условно глобальным блокированием всех копий структур? А без ссылки на Mutex - структуры блокируются независимо?
21:17
а можно ли в данной ситуации сделать wg.Add(len(urls)) единожды, перед запуском цикла?
если так, то почему так делать не стоит?
спасибо за видео!
забавно про конд, тоже не так давно просто увидел его. что-то юзлес или почти юзлес
Привет!
Правильно ли я понял, что мьютекс объявляется в структуре по значению, при этом явная инициализация (например, в функции-конструкторе) не требуется?
Привет! Да, всё правильно )
@@deferpanic По факту, можно хранить ссылку, но обязательно, чтобы все методы были с ссылочным ресивером. Но, тогда, придется выполнять явную инициализацию в функции-конструкторе
Есть ещё один краевой случай: если вы разыменуете ссылку на структуру, чтобы сделать копию, например, то ссылка на мьютекс в копии будет всё ещё та же.
@@deferpanic интересное замечание, спасибо
Разве голанг после 1.4 версии планировщик не перешел на модель вытесняющей?
Сейчас смешанная модель
Coooooooooler
сексуальная лысина и отличный видос
ok == false значит канал закрыт !
тоже обратил внимание на этот момент и полез в комментарии