Size: a a a

2020 October 20

KK

Kirill (Cykooz) Kuzm... in rannts
Байт Словович
ну да, есть список тредов, из него и удаляем..
зачем основной тред для проверки живого треда? Сам тред легко может решить, надо ему жить или нет.

> Надо хотя бы перепроверить очередь ещё раз после того как ты схватил лок
Не надо.  если вдруг пришло куча заданий, то новые треды будут созданы.. Это прям не проблема.  Тут можно добавить разные полиси, что тред не надо удалять если был только что создан, проверять время жизни треда и т.д.
А почему треды будут созданы? Таска в очередь была добавлена и "до свидания". А тред в это время сам себя убил. Только при следующей попытке добавить таску в очердеь можно будет проверить что тредов как-то маловато. Но как я выше написал - придётся обмазываться локами, что бы не начать добавлять в пул треды сразу из нескольких потоков.
источник

БС

Байт Словович... in rannts
локи и так есть. Если не устраивает теоретические коллизии, то можно сделать управляющий тред, который бы отслеживал это.
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Самое простое - любую операцию с очередью выполнять под общим локом
источник

БС

Байт Словович... in rannts
вот так точно не надо делать...
источник

SA

Sergey Arkhipov in rannts
https://duckdb.org/ какая красота
источник

KK

Kirill (Cykooz) Kuzm... in rannts
А как тогда разрулить проблему, что тред может убить себя в тот момент, когда кто-то добавлят таску в очередь?
Типа вот такая ситуация как на картинке.
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Хм, можно конечно сначала добавить таску в очередь, а потом проверять число тредов
источник

БС

Байт Словович... in rannts
да можно по разному. я ж не говорю что эта проблема элементарная, но вполне решаемая. Надо анализировать кейсы и смотреть как сделать лучше. Много лет назад на плюсах я писал подобный тредпул (и да это далеко не один день был). Но сейчас я хочу взять готовое. Поскольку ничего не нашел, взял код из питона 3.8, он хотябы не создает лишних тредов.
источник

БС

Байт Словович... in rannts
Ну и плюс есть два подхода к мултитредам. Оптимистичный и пессимистичный. Второй тип, это как ты сказал, использовать глобальный лок. Но тогда мы будем много времени терять на ожидании освобождения лока. Оптимистичный, это точечные и быстрые локи. При это да возможны коллизии, когда задача пришла, а тред суициднулся. Но часто в этом ничего страшного нет. Ну там раз в день таска не сразу будет взята на выполнение, а через секунду..
источник

БС

Байт Словович... in rannts
это sqllite на стероидах?
источник

БС

Байт Словович... in rannts
Как минимум можно будет из нескольких тредов в базу писать.
источник

SA

Sergey Arkhipov in rannts
Байт Словович
это sqllite на стероидах?
Да, вроде как. Это как sqlite, но про колоночное представление данных
источник

БС

Байт Словович... in rannts
да там парсер от постги, MVCC тоже от туда, CLI это sqlite.. Движок видать свой.  А вот колонки или строки, вот пофиг.
Как правило нужно эмбедед базу в которую можно параллельно писать. А вот для аналитики, можно и не эмбедад использовать. Ведь аналитика подразумевает большой объем и кластеризацию..
источник

SZ

Sergey Z in rannts
в Федоре поддержку Биос выпиливают, когда эта мода распространится везде, так и придётся новый ноутбук купить.
проклятые корпорации :)
источник

A🌚

Al 🌚l in rannts
Sergey Z
в Федоре поддержку Биос выпиливают, когда эта мода распространится везде, так и придётся новый ноутбук купить.
проклятые корпорации :)
Они таки решились? Там же вроде много негатива на эту идею вылили
источник

SZ

Sergey Z in rannts
источник

SZ

Sergey Z in rannts
ну основание то разумное, раз уж производители железа прекращают поддержку биос, то и в дистрибутивах оно зачем.
просто не единомоментно же, если в железе прекращают в 2020, то в софте придётся ещё десяток лет подождать.
может внутри есть какая-нибудь статистика, и эти самые десять лет фактически уже прошли и биос прямо сейчас никому уже не нужен
источник

AM

Artem Malyshev in rannts
Sergey Z
ну основание то разумное, раз уж производители железа прекращают поддержку биос, то и в дистрибутивах оно зачем.
просто не единомоментно же, если в железе прекращают в 2020, то в софте придётся ещё десяток лет подождать.
может внутри есть какая-нибудь статистика, и эти самые десять лет фактически уже прошли и биос прямо сейчас никому уже не нужен
Скорее всего у них лтс на этот случай. Если тебе надо старое железо, для тебя есть старый дистрибутив.
источник

『Serg』 in rannts
Sergey Z
в Федоре поддержку Биос выпиливают, когда эта мода распространится везде, так и придётся новый ноутбук купить.
проклятые корпорации :)
В довесок к docker
источник
2020 October 22

БС

Байт Словович... in rannts
@cykooz ты решил sockjs мэинтейнить?
https://github.com/aio-libs/sockjs/issues/264
источник