Привет. Спасибо за урок, прочита комменты, еще хотел бы сказать, что в го не рекомендуют передавать функцию cancel в другие функции как параметр(и впринципе я не где такого не видел), что она должна быть вызывана на том же уровне, где вернулась из созданного контекста, для того чтобы получить cancel на нужном тебе уровне, сделай на том уровне еще один контекст из переданного, получи cancel и используй его там же. И ниже комментарий "2. Работа с таймаутом в select -- это не правильно. Вылавливание сигнала должно быть в ОТДЕЛЬНОМ потоке. И именно из этого отдельного потока -- нужно прерывать сервер, а не играться с его таймаутом." - очень прав, очень, отсюда пляшут все остальные вопросы.
Спасибо, отличное видео. Пару моментов: 1) Выкладывайте код в репозиторий, т.к. после просмотра хочется посмотреть на весь код и ещё раз осознать всё. 2) Хотелось бы понять как через контекст передавать данные (конфиги и тп.) И узнать правильные практики на этот счёт.
Спасибо! Насчет кода я что-то не сразу сообразил, чтобы выкладывать исходники. По поводу контекста - данные вглубь можно передавать с помощью context.WithValue, но тут главное не увлекаться. Конфигурацию я бы не советовал таким образом передавать.
Отличные видео. В русскоязычном сегменте, с таким подходом, ты будешь одним из первых и одним из лучших :) Оставь какие-нибудь контакты для доната, с радостью поддержу выход новых роликов)
нужно ли в конкретно вашем случае в функции handleSignals добавлять фор и проверять тип сигнала? Вы ведь подписались только на один сигнал, других ведь не должно прийти?
Все верно, в данном случае действительно можно обойтись без for. Я так написал скорее по привычке, т.к. помимо SIGINT часто приходится отлавливать, н-р, SIGHUP и т.п.
Сейчас пока больше Руби в ходу, да. Вообще хочется снимать не только про Go, но и другие языки/технологии/штуки, но на этом канале это, кажется, не очень уместно будет.
Привет! Я использую vscode-go c такими настройками: "go.autocompleteUnimportedPackages": true, "go.formatTool": "goimports", "go.useLanguageServer": true,
Шикарный урок. И объясняешь прекрасно. Эх, продолжил бы выкладывать уроки.
Больше бы уроков по concurrency в реальной жизни.
Привет. Спасибо за урок, прочита комменты, еще хотел бы сказать, что в го не рекомендуют передавать функцию cancel в другие функции как параметр(и впринципе я не где такого не видел), что она должна быть вызывана на том же уровне, где вернулась из созданного контекста, для того чтобы получить cancel на нужном тебе уровне, сделай на том уровне еще один контекст из переданного, получи cancel и используй его там же.
И ниже комментарий "2. Работа с таймаутом в select -- это не правильно. Вылавливание сигнала должно быть в ОТДЕЛЬНОМ потоке. И именно из этого отдельного потока -- нужно прерывать сервер, а не играться с его таймаутом." - очень прав, очень, отсюда пляшут все остальные вопросы.
Спасибо, отличное видео. Пару моментов: 1) Выкладывайте код в репозиторий, т.к. после просмотра хочется посмотреть на весь код и ещё раз осознать всё. 2) Хотелось бы понять как через контекст передавать данные (конфиги и тп.) И узнать правильные практики на этот счёт.
Спасибо! Насчет кода я что-то не сразу сообразил, чтобы выкладывать исходники. По поводу контекста - данные вглубь можно передавать с помощью context.WithValue, но тут главное не увлекаться. Конфигурацию я бы не советовал таким образом передавать.
хорошее видео, давайте больше про контексты расскажите и покажите где оно используется в стандарной библиотеке
хорошее видео, спасибо
Контекст не только для остановки приложения. Раскрыл все его возможности на своем канале.
...было бы здорово исходники лекции сохраненные после посмотреть пощупать. Предлагаю сохранять окончательный текст примера
Отличные видео. В русскоязычном сегменте, с таким подходом, ты будешь одним из первых и одним из лучших :)
Оставь какие-нибудь контакты для доната, с радостью поддержу выход новых роликов)
Большое спасибо! Насчёт доната - пока даже не думал в эту сторону, пока цель набрать подписчиков)
700-й лайк
нужно ли в конкретно вашем случае в функции handleSignals добавлять фор и проверять тип сигнала? Вы ведь подписались только на один сигнал, других ведь не должно прийти?
Все верно, в данном случае действительно можно обойтись без for. Я так написал скорее по привычке, т.к. помимо SIGINT часто приходится отлавливать, н-р, SIGHUP и т.п.
O' daaa! 100ij subscriber! :)
Еее, майлстоун!:)
Как жаль, что ты больше не снимаешь новые видео и перешёл обратно в Ruby (судя по профилю на GitHub) 😢
Сейчас пока больше Руби в ходу, да. Вообще хочется снимать не только про Go, но и другие языки/технологии/штуки, но на этом канале это, кажется, не очень уместно будет.
@@GopherSchool может сменишь название канала и начнешь снимать, пока подписоты мало? а то потом глядишь и 100к
@@bashscript2805 Да вот думал об этом :)
привет) не хочешь совместно замутить стрим / видосики ? можно типо подкастов
Привет! Для автокоплит команд go для VS code какими расширениями пользуешься. Сейчас у меня только подсветка синтаксиса(
Привет! Я использую vscode-go c такими настройками:
"go.autocompleteUnimportedPackages": true,
"go.formatTool": "goimports",
"go.useLanguageServer": true,
@@GopherSchool спс. Не пашет. У меня компилятор на удаленном vps. Как быть?) Как прикрутить удаленный компилятор к vscode для автокомплита?)
А где продолжения ?
Скажу что по Го твой канал во многом лучше.
За исключением - Мало материала.
Чуть не уснул. Вот как-то так...
Нихера не видно на экране. Автор пробовал свое видео разглядеть на телефоне, например? Зачем мельчить то, учитывая что ютуб качество режет