Go Channels Internals / Егор Гришечко (Insolar)

Поділитися
Вставка
  • Опубліковано 27 кві 2020
  • При поддержке AvitoTech мы впервые публикуем все видео с GolangConf 2019 в открытый доступ. Учитесь, вдохновляйтесь и перенимайте лучшие практики у спикеров, не выходя из дома.
    Приглашаем на GolandConf 2020 live!
    14-17 октября 2020, онлайн по всему миру.
    Подробности и билеты bit.ly/3eYckfH
    Календарь конференций - ontico.ru
    --------
    GolangConf 2019
    Тезисы и презентация:
    golangconf.ru/2019/abstracts/...
    Каналы - хорошая известная особенность языка. Иногда кажется, что они работают с помощью магии. Но в Go магии места нет.
    В ходе выступления я расскажу о внутренностях Go-каналов.
    ...
    --------
    Нашли ошибку в видео? Пишите нам на support@ontico.ru

КОМЕНТАРІ • 12

  • @user-om4hu7fv7k
    @user-om4hu7fv7k День тому

    Отличный доклад

  • @VladimirBokov
    @VladimirBokov 2 роки тому +17

    5:24 #суть канал - это структура с буфером, 2мя очередями и локом внутри.
    пожалуйста

  • @konstantingeist3587
    @konstantingeist3587 3 роки тому +18

    >list => лист
    >string => стринга
    >heap => хипа
    >"это я вам на русский перевёл"
    :)

    • @sawpaaduegulusf
      @sawpaaduegulusf 2 роки тому +2

      Ну учитывая, что некоторые зачастую читают app, CRDT, GCC и т.д. как-нибудь навроде "а-пэ-пэ", "цэ-эр-ди-тэ", "гэ-цэ-цэ", то "хип" и "лист" - это прямо нормальный и понятный "перевод". :)

    • @Slavayoutube810
      @Slavayoutube810 Рік тому

      меня еще на 3 минуте передернуло от "скедулер"))

  • @esimitley4729
    @esimitley4729 Рік тому

    спасИбо

  • @artyomecheistov
    @artyomecheistov 6 місяців тому

    Какую IDE здесь используют?

  • @Levelord92
    @Levelord92 2 роки тому +3

    Почему кстати в структуре hchan поле closed нифига не bool, а uint32?

    • @alekseykourbatov2823
      @alekseykourbatov2823 2 роки тому +6

      Потому что есть Fast Path при неблокируемом чтении из пустого канала, где это поле вычитывается через atomic.Load(&c.closed). Вообще в 90% процентов случаев не зависимо от языка, если вместо bool используется uint32/uint64, то значит где-то есть атомарные операции над этой переменной

  • @pavel_trpn
    @pavel_trpn Рік тому +1

    опять на слайдх код не моноспейс, доколе?!!

  • @EXSELSIOR1320
    @EXSELSIOR1320 2 роки тому

    SCAM