.
И разве го не использует потоки Ос и между ними перекидует горутины?
.
Vladimir
Cat
Pawel
Cat
Cat
Pawel
нет. есть правильная терминология и отсебятина. рекомендовано придерживаться первой.
.
Окей, в разрезе Го: потоки, которые он изначально создаёт, используются постоянно до конца работы программы или планировщик может грубо говоря заменять их?
Cat
Vladimir
Понял
В ос переключение потоков идёт относительно просто - проснулся таймер, состояние того, что выполнялось сохраняется, восстанавливается состояние того что будет выполняться. Это позволяет прервать поток в любой момент времени, но довольно дорого по ресурсам
Pawel
Cat
Cat
и ты на это не влияешь
ThunderAL
@kezvision
Key
import (
"github.com/satori/go.uuid"
"crypto/rsa"
"crypto"
"crypto/sha256"
"crypto/x509"
"github.com/pkg/errors"
"../Keystore"
)
Keystore
import (
"github.com/satori/go.uuid"
"github.com/pkg/errors"
"../Key"
)
ThunderAL
Cat
.
.
Cat
и модули и файлы лучше называть со строчной буквы, чтобы не было путаницы, как у вас
.
ThunderAL
@kezvision я совсем недавно в голанге. подскажите, пожалуйста. мне, просто, надо сделать верификацию через cli. выбрал голанг для опробации этого яп
Cat
Pawel
Почему не должно волновать?
тебе надо знать только что ос тред дроже чем зелёный поток Го. ос треды жрут 1 мб стека, гринтред несколько кб, переключение между ос тредами происходит в режиме ядра, а между гринтредами нет. всё
Cat
> ос треды жрут 1 мб стека, гринтред несколько кб
depends on
.
Но в тоже время допустим в Пайтоне интепритатор сам переключается между тредами
.
Сам решает какой тред должен выполняться в текущий момент
Cat
.
То есть он не даёт им выполняться только за счёт локов?
Cat
Vladimir
Горутины переключает го само у себя, в моменты когда это безопасно (можно поискать списки моментов когда рантайм проверяет нужно ли зашедулить другой поток)
Cat
(если будешь искать, список моментов есть в спеке)
Vladimir
Притом го ещё знает что нужно сохранять в данный момент
ThunderAL
@kezvision готур прошёл давненько всё забылось. обязательно пройду щас ещё раз. подскажите как это правильно заимпортить сейчас
.
Как я понимаю, в Го те потоки, которые поднимаются при старте программы, работают одновременно для приложения. Но в то же время планировщик ОС переключается между потоками нашего приложения и других. Верно?
Vladimir
Поэтому переключение немного быстрее идет
Vladimir
Но не в любой момент
Vladimir
.
Понял, спасибо
.
Сейчас как то прояснилось
Cat
.
Посоветуете какую то литературу чтобы углубиться в вопрос многопоточности? Чисто интересно
Cat
.
Ну и наверняка хорошую литературу по ОС
.
.
Сейчас более менее прояснилось
.
Всем спасибо за ответы
Cat
жаль, что в го это никак не пригодится
ThunderAL
@kezvision ЫЫЫЫЫЫЫЫЫ. нашёл в чём дело. когда вспомнил, что в гошке public это заглавная буква(ну шо поделать: привык я к java). поднял GetByUUID и всё норм. спасибо
.
Подскажите, статья ещё актуальна? https://morsmachine.dk/go-scheduler
Zver
Zver
https://rakyll.org/scheduler/
.
heavycharged
да, concurrent mark and sweep
Zver
Или уже просто не помню.
.
Кстати, планировщик распределяет горутину между тредами случайным образом?
.
Когда мы создаём горутину
Daniel
Можно считать, что случайным
Александр
добрый вечер, пишу парсер yandexa необхоимо делать 20 запросов с промежутком 5 секунд. Yandex понимает что это парсер. подскажите самый безболезненый способ. пока что пользуюсь вот этим github.com/antchfx/htmlquery
Constantine️
😄
Constantine️
я даже не знаю, есть ли чат по джуниорам в мире веба )
Constantine️
не путайте мягкое с теплым, яндекс детектит, что ваш айпи дергает их сервис. хотите обойти? ищите хорошие прокси на каждый запрос
Aleksandr
(хотя 1 ip per request помог бы конечно)
Constantine️
а если это все постоянно дергается? 🙂
Constantine️
в течение часа-двух-трех?
Constantine️
это будет показателем?))
Constantine️
если парсишь гугл или яндекс — запасайся проксями
Constantine️
это не сайты клаудфлейром защищенные обходить, где достаточно eval для строки Х сделать и отдать с запросом
Aleksandr
не знаю. за натом же дергают люди в течении 24 часов
Constantine️
у разных юзеров разные браузеры, у них разная интенсивность
Aleksandr
Constantine️
у меня иногда при входе на яндекс мессадж — ваш айпи был замечен в парсинге, а введика капчу