Size: a a a

2020 May 19

AK

Anton Kucherov in Go-go!
а кто это
можно писать из отдельной горутины, тогда писатель никогда не заблокируется
Ну почему, писатель то в отдельной горутине, вот она и заблокируется 🙂 Но не суть. Мне вот тоже интересен вопрос. Когда и как нужно использовать буферизованные каналы и самое главное, как подбирать размер буфера.
источник

RS

Roman Sharkov in Go-go!
Anton Kucherov
Ну почему, писатель то в отдельной горутине, вот она и заблокируется 🙂 Но не суть. Мне вот тоже интересен вопрос. Когда и как нужно использовать буферизованные каналы и самое главное, как подбирать размер буфера.
обычно, тебе станет это понятно тогда, когда они (буферизированые каналы) тебе понадобятся
источник

а

а кто это in Go-go!
Anton Kucherov
Ну почему, писатель то в отдельной горутине, вот она и заблокируется 🙂 Но не суть. Мне вот тоже интересен вопрос. Когда и как нужно использовать буферизованные каналы и самое главное, как подбирать размер буфера.
ну да, но просто основный цикл писателя(не канала, а конкретного объекта) будет создавать новые горутины
источник

RS

Roman Sharkov in Go-go!
а кто это
ну да, но просто основный цикл писателя(не канала, а конкретного объекта) будет создавать новые горутины
зачем, если есть буферизированые каналы, которые скорее всего будут гораздо экономнее и лаконичнее?
источник

а

а кто это in Go-go!
то что каналы не умеют в динамическое изменение буфера
источник

AR

Aleksandr Razumov in Go-go!
а кто это
то что каналы не умеют в динамическое изменение буфера
А зачем?
источник

AR

Aleksandr Razumov in Go-go!
Все равно у системы есть какой-то оптимум по latency или по throughput
источник

C

Calculon in Go-go!
а кто это
то что каналы не умеют в динамическое изменение буфера
кстати эрланг умеет
источник

VG

Vladislav Gruchik in Go-go!
Anton Kucherov
Ну почему, писатель то в отдельной горутине, вот она и заблокируется 🙂 Но не суть. Мне вот тоже интересен вопрос. Когда и как нужно использовать буферизованные каналы и самое главное, как подбирать размер буфера.
У меня обычно это акторная модель. В которой либо читатель либо писатель - узкое место. И желательно чтобы это узкое место никогда не блокировалось лишний раз. Соответственно если читатели медленнее то нужно чтобы они в худшем случае (сразу все пришли) получили по элементу канала. Если писатели медленнее, то вместимость канала должна быть такой чтобы он никогда не заполнился.
источник

а

а кто это in Go-go!
в общем-то задача сводится к синхронизации читателя и писателя
источник

AK

Anton Kucherov in Go-go!
Так понятно, спасибо. Непонятно только как подобрать размер буфера и как потом проверить, что они не тормозят друг друга. 🤔 Ясное дело в разных случаях будет разный размер, но какой-то алгоритм подбора то должен быть. Не пальцем же в небо тыкать
источник

VG

Vladislav Gruchik in Go-go!
Anton Kucherov
Так понятно, спасибо. Непонятно только как подобрать размер буфера и как потом проверить, что они не тормозят друг друга. 🤔 Ясное дело в разных случаях будет разный размер, но какой-то алгоритм подбора то должен быть. Не пальцем же в небо тыкать
Брать сначала небуфиризирлванный,  а потом на основе метрик понимать что происходит. В общем для меня предыдущие условия сводятся к расзмеру по наибольшему количеству из количества читателей/писателей. (Если читатели медленнее, то они если разом придут получат по значению, если писатели в сумме медленнее и в один момент попытаются записать, то тоже должны справиться без блокировки)
источник

VG

Vladislav Gruchik in Go-go!
Конечно бывают и более сложные случаи, когда варьируется скорость читатели или/и писателей. Тогда без метрик вообще никуда.
источник

DD

Deka Dancer in Go-go!
Кроме colly чем еще можно потыкать кнопки на сайте?  Надо сделать загрузку файлов но там апи нет и приходится так)
источник

IK

Ilya Kaznacheev in Go-go!
Господа, бывало ли у вас такое, что в процессе мерджей какие-то строки пропадают без следа?
источник

IK

Ilya Kaznacheev in Go-go!
У меня куда-то две строки выпало. Коммит, где они добавляются, есть, а коммита, где они убираются - нет 🙁
источник

DS

Dmitry Soloma in Go-go!
Ilya Kaznacheev
Господа, бывало ли у вас такое, что в процессе мерджей какие-то строки пропадают без следа?
Такое былвает если ревертали и вмерживали реверты
источник

IK

Ilya Kaznacheev in Go-go!
Dmitry Soloma
Такое былвает если ревертали и вмерживали реверты
а git reset --hard к такому может привести?
источник

IK

Ilya Kaznacheev in Go-go!
Я разок не в ту ветку закоммитил и откатил коммит, но потом в другую тоже самое сделал и смерджил
источник

DS

Dmitry Soloma in Go-go!
Ilya Kaznacheev
а git reset --hard к такому может привести?
резет конечно может привести к такому если на конце указано было количество комитов HEAD~N
источник