Size: a a a

Сrystal Lang — русскоговорящее сообщество

2021 June 13

YS

Yura Sokolov in Сrystal Lang — русскоговорящее сообщество
Очень спорное утверждение, учитывая, что концепциям, реализованным в Go, не меньше 35 лет. А большинство фишек конкурентности уже встречались в других языках и рантаймах (к большинству из которых, правда, прикладывали руку как раз авторы Go).
источник

YS

Yura Sokolov in Сrystal Lang — русскоговорящее сообщество
По мне, Crystal будет «как Go», когда такой же GC появится.
Но тогда это будет не Crystal.
источник

ВВ

Ваня Ваня in Сrystal Lang — русскоговорящее сообщество
“Как Go” в каком плане?
источник

YS

Yura Sokolov in Сrystal Lang — русскоговорящее сообщество
Субмиллисекундные паузы на гигабайтных кучах.
источник

E

Etki in Сrystal Lang — русскоговорящее сообщество
Мне кажется вы переоцениваете гошечку. Емнип там вообще CMS без изощрений.
источник

E

Etki in Сrystal Lang — русскоговорящее сообщество
> Sep 21, 2018 — As of Go 1.10, the garbage collector for Go is the Concurrent Mask & Sweep (​CMS) collector which does not compact and is not generational.

Вы ОЧЕНЬ переоцениваете гошечку, если три года назад она была вот здесь
источник

HH

Hz Hz in Сrystal Lang — русскоговорящее сообщество
в большинстве языков это прикручено сбоку, что вызывает только боль при highload исползьовании (примеры rust, c++, ruby + em), а в языках где оно на уровне всего енва (ио, файлы, таймеры) - это го, кристал и ерланг, больше в голову ниче не идет, и как по мне очень круто для веб программирования
источник

YS

Yura Sokolov in Сrystal Lang — русскоговорящее сообщество
Вы ее не тестили. Это раз.
Во-вторых, CMS CMS-у рознь.
У Го-шечки действительно STW обычно меньше миллисекунды. Иногда единицы миллисекунд, и очень-очень редко десятки миллисекунд.
И это на кучах в гигабайты и десятки гигабайт, с десятками тысяч горутин.
До версии 1.15 было слабое место: циклы без safepoints . Но в 1.15 сделали полностью preemptive.
источник

E

Etki in Сrystal Lang — русскоговорящее сообщество
Мне нужно тестить, чтобы убедиться что оно "not generational"?
источник

E

Etki in Сrystal Lang — русскоговорящее сообщество
Как вообще понимать ЦМС ЦМСу рознь?
источник

E

Etki in Сrystal Lang — русскоговорящее сообщество
Бинарный поиск бинарному поиску рознь.
источник

YS

Yura Sokolov in Сrystal Lang — русскоговорящее сообщество
Извините, но мы про разные вещи. Я - про максимальную паузу stw.
источник

YS

Yura Sokolov in Сrystal Lang — русскоговорящее сообщество
У той же Java максимальный stw… ну я видел минуты
источник

E

Etki in Сrystal Lang — русскоговорящее сообщество
Давайте не будем в теоретиечской части про "я видел"
источник

YS

Yura Sokolov in Сrystal Lang — русскоговорящее сообщество
Извините, но я про практику.
источник

E

Etki in Сrystal Lang — русскоговорящее сообщество
STW действительно будет небольшим, если во время него ничего не делать
источник

E

Etki in Сrystal Lang — русскоговорящее сообщество
Но в противовес "я видел T операции до Х" надо искать такой же "в Go воспроизведение того же заняло Y"
источник

YS

Yura Sokolov in Сrystal Lang — русскоговорящее сообщество
Короче, у Go получилось сделать минимальный stw. У Java вот только-только, и емнип Shenando  и ZGC только подобрались к подобным величинам. И, емнип, они очень похожи на гошный GC по механике.
источник

E

Etki in Сrystal Lang — русскоговорящее сообщество
Одиночный STW у джавы кстати не может быть в минуты. Вот переполненная куча, которая постоянно триггерит сборку за сборкой - это да.
источник

E

Etki in Сrystal Lang — русскоговорящее сообщество
Как они могут похожи на гошный механизм, если го это CMS, а ZGC и Shenandoah пришли как альтернативы ему и G1?
источник