Как стать автором
Поиск
Написать публикацию
Обновить

Комментарии 5

Так, например, GOLF игнорирует горутины с финализаторами и очистками, т.к. их срабатывание может привести к непредсказуемым последствиям.

Как по мне - это самая серьезная проблема пропозала.

Сами по себе финализаторы не рекомендованы, однако есть довольно много кейсов когда без значительных изменений в кодовой базе нужно туда затянуть примитив в котором есть ресурсы которые явно надо освобождать, и тут финализаторы служат спасением.

Не скажу что часто с этим сталкивался, но один раз вот реально сильно выручила возможность навесить финализатор. И подозреваю, что кейсов, когда финализатор - меньшее зло - их довольно много.

Ну а очистки ресурсов - это вообще повсеместно. И если все очистки не засунуты в defer (а иногда их туда и не засунуть), то вопрос корректного освобождения ресурсов становится совсем не тривиальным.

Финализаторы не рекомендованы с появляением очисток, тк финализиторы изначально вообще вводились, чтоб иметь возможность корректно вернуть ОС память с выделенную через C.malloc. Но в целом да, вещи ломающий абстракцию гц (финализаторы слабые ссылки, очистик) - рекомендуется использовать редко и только когда действительно в этом есть смысл

Ну и я наверное излишне упростил, по факту горутины с финализаторами- переводятся в состояние deadlock (если недостижимы), но считаются живыми для очистки. Те дедлоклок будет задетекчен, просто в ориганильном GOLF такие не очищаются автоматически

Насколько широко Go используется в крупной торговле в России? Модное веянье или надолго?

ВсеИнструменты, Магнит, Озон, Вайлдберис, Авито это из того что сразу на ум пришло

У Яндекса это тоже часть стека, тинькофф, туту, и многие другие активно пишут на Го

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации