170 похожих чатов

Всем привет, уважамый чат! Какой из подходов более “go-way” Прокидывать контекст через

кучу функций куда нужно…

Или можно его сделать переменной пакета и просто ссылаться эту переменную где нужно?

17 ответов

17 просмотров

Нельзя контекст сделать глобальной переменной ибо контекст зависит от времени жизни сущности, которая вызывает ваш код....

root-Lunev Автор вопроса
Dmitry
Нельзя контекст сделать глобальной переменной ибо ...

Понимаю. Хотел в нужном месте потом этот контекст просто cancel’ить

прилетел запрос следом и перезаписал контекст ?

root-Lunev Автор вопроса
Alexey Ermakov
прилетел запрос следом и перезаписал контекст ?

Нет, это скорее глобальный контекст, который отвечает за graceful shutdown Не контекст запроса

root Lunev
Нет, это скорее глобальный контекст, который отвеч...

Короче через функцию таскай аргументом и не будет вопросов. Просто контест в го есть тупо property bag, но на кой то хрен в него же решили пихать cancellation token и поделали апишку под это дело и получилась какая каша ....

Dmitry
Короче через функцию таскай аргументом и не будет ...

Первопричина контекста - отмена операций и делайны, прокидывать через него значения вещь очень ситуативная и близкая к анти-паттерну

Royal Cat
Первопричина контекста - отмена операций и делайны...

Да все прокидывают, например куча http фреймворков.

Dmitry
Да все прокидывают, например куча http фреймворков...

А если все с крыши прыгать будут, мы тоже будем? 😄 Но справедливости ради соглашусь, что context.WithValue подразумевает использование контекста для прокидывания разносортных "глобально-локально" доступных данных Для неискушенных JavaEE - что-то типа @RequestScoped бинов

Dmitry
Да все прокидывают, например куча http фреймворков...

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

А почему token отмены НЕ должен быть отдельным аргументом , а должен быть впихан в контекст ?) Он особенный?)

Dmitry
А почему token отмены НЕ должен быть отдельным арг...

Да, он особенный, это его предназначение) Прочитал что такое CancelationToken, контекст его не прокидывает, его в принципе не существует, context полностью заменяет его

Royal Cat
Да, он особенный, это его предназначение) Прочитал...

Ну да, заменяет. Но одновременно этот же контекст реализует property bag паттерн... Где не только такие вот токены могут быть, одновременно (!) с этим этот класец имеет api для работы с токенами отмены (хм?)

Dmitry
Ну да, заменяет. Но одновременно этот же контекст ...

property bag обычно стараются типизировать, его логичнее реализовывать заэмбедив контекст в свой собственный контейнер

Royal Cat
property bag обычно стараются типизировать, его ло...

Ну вот контекст го не следует этому.

Property bag выглядит как то что стоит реализовать самостоятельно и кидая свою структуру с нужными полями, тем же вторым аргументом

Royal Cat
Property bag выглядит как то что стоит реализовать...

Покуда есть контекст который уже имеет это никто не будет заморачиваться.

Похожие вопросы

Обсуждают сегодня

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
в сях есть множество как в питоне? для удаление дубликатов
Linus
25
читать файл максимально быстро? странный вопрос))
zamtmn
53
Я хочу запустить свой проект в тг. Что-то между пирамидой и майнилкой. Еще подобного ничего не было. Уникальная идея. Нужен именно не бот, а приложение. С ввод, выводом тон...
Павел А.
6
а как бы вылезти из ИО, что то типа IO -> Ether или в какую сторону смотреть ? что то туплю
Fedor
14
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
How to create an OS in C? what to study?
Linus
18
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Всем доброго вечера! Хочу поделиться своим злоключением с человеком, который, как оказалось сюда тоже скидывал свое резюме. Жаль, что я вашу группу не нашел раньше… человек ки...
Роман Ахмедзянов
4
Реально в одиночку написать игровой движок на Си?
ㅤ (SVO)
11
Карта сайта