Anonymous
а почему никто не выходит из того чата?
Dmitry
Я вышел
Anonymous
двойные стандарты
Loyd
обёртки над сисколами это не сложно, я гарантирую это
Можно пример бага в обертке над сисколами?
Loyd
Ну, если в расте из глибс используются только обертки, то нас волнует из безопасность, так?
Loyd
А не то, что в условном strcmp проебаться можно
Судзумия
Вот например: https://security.googleblog.com/2016/02/cve-2015-7547-glibc-getaddrinfo-stack.html Если кратко: glibc занимает два килобайта на стеке для ответа DNS, а если ответ больше, то аллоцирует место в хипе. "Некоторые" условия могут заставить glibc забыть выделить место в хипе, несмотря на большой размер ответа, и привет buffer overflow
分解物質
Ну, если в расте из глибс используются только обертки, то нас волнует из безопасность, так?
> если в расте из глибс используются только обертки не только, ещё pthread
Loyd
вот либу для тредов чуть сложнее
Учитывая, что будет переезд на parking lot, то нужен только park
Loyd
Ого, будет?
Ну, помню обсуждали активно и решили подождать чуть, пока parking_lot насобирает граблей.
stalkerg
К вам можно?
Судзумия
Проходи
stalkerg
Спасибо. Я видимо с этим переездом то же всё пропустил.
stalkerg
Тут теперь никакой комерции и только ламповый Раст?
Судзумия
Верно :)
Судзумия
Точнее, никаких курсов по жс
stalkerg
отлично
stalkerg
я в теории их могу удалить, но ведь потом опять повесят и у меня модерку заберут :(
stalkerg
ИМХО слишком жырно поступили
stalkerg
если бы раз в месяц была рекламма - то никто бы не парился а кому надо тот бы зашёль, и канал бы процветал
stalkerg
а так это просто ну... 大
Sherzod
а так это просто ну... 大
Не знаю, что это иероглиф, но тут у нас принято анимешные стикеры
Sherzod
stalkerg
Не знаю, что это иероглиф, но тут у нас принято анимешные стикеры
это кандзи "большой" если к нему прибавить ключь "капля" то будет жир. :) Я правда не знаю как оно записывается :( пока ещё не выучил .
stalkerg
а так хорошо что аниме стикеры... это всё моя "тусовка" :)
stalkerg
պլհկ
сраный рлс больше не запускается ):
Судзумия
Ah, classic!
պլհկ
решил затестить, что там в идею завезли за это время
պլհկ
պլհկ
прикольно, по клику на иконку docs.rs открывается
պլհկ
сорь, я последний раз тыкал полгода назад
Loo
Я вот хочу карго экспанд при кликах на дерайвы
Судзумия
дерив или дерайв
Dmitry
дерайв
Судзумия
Верно
պլհկ
https://rustjobs.rs/
պլհկ
оно быстрее стандартных
պլհկ
почитай пост от вебкита
Loyd
Чем примечателен, зачем нужен?
оригинал: https://webkit.org/blog/6161/locking-in-webkit/ растовая версия: https://github.com/Amanieu/parking_lot
Loyd
Если в кратце: - жрёт СИЛЬНО меньше памяти - работает быстрее - это адаптивные локи (то мьютекс тут это спинлок + мьютекс)
Fo
оригинал: https://webkit.org/blog/6161/locking-in-webkit/ растовая версия: https://github.com/Amanieu/parking_lot
Про СИЛЬНО меньше памяти чет не понятно, это же всего 1 байт против восьми. Какую оно погоду делает в том же кеше проца, если всеравно оверхед на кеш линию идет?
Fo
64 байта pthread-овский мьютекс
Показалось что биты
Fo
Но все же, не так уж ведь много. В чем именно все эти опасения про память?
Loyd
Ну, это адаптивные локи. Спинлоки + мьютексы полноценные
Loyd
Должны весить столько, чтобы можно было всю хештаблицу по ячейкам залочить
Маjко
Должны весить столько, чтобы можно было всю хештаблицу по ячейкам залочить
Ну да, если ка каждой ячейке таблицы из хотя бы 10к элементов висит по локу в 64 байта, то это копец много
Anonymous
еще один анимедеб)00)))
Dmitry
Safort
Ну да, если ка каждой ячейке таблицы из хотя бы 10к элементов висит по локу в 64 байта, то это копец много
Какую литературу прочитать, чтобы в общем понимать о чём вы говорите?)
Sherzod
Один мютекс на одну хэш таблицу не достаточен?
Судзумия
Достаточен, но это будет очень медленная таблица
Sherzod
Ну минусы я вижу, при попытке _получить_ два айтема по двум разным ключам будет медленне, чем если бы на каждый ключ/айтем был бы свой лок. Но где так делают? Можно примеры по конкретнее?
պլհկ
Что делают? Получают вэлью по разным ключам?
Sherzod
Получают валью для чтения и/или записи, или просто делают запрос вида ContainsKey
Loyd
В смысле где? Везде. Самая популярная реализация конкурентного хешмапа это хешмап с методом цепочек, где сам цепочки --- списки, защищённые мьютексом (но гораздо лучше адаптивным локом), либо локфри (не всегда возможно). Но если локи дешёвые по памяти, то можно вообще любую таблицу превратить в конкурентную, с тем же робином гудом, с небольшими модификациями
Loyd
В каком месте?
Loyd
Bucket настолько общее слово, что без контекста ничего не значит
Loyd
В методе цепочек нет bucketов
Loyd
Там... Цепочки)
Loyd
Если ты, конечно, не называешь ячейку bucketом
Sherzod
Вы написали "сами цепочки -- списки", это и есть бакеты в моем понятии
Sherzod
А вообще забейте, я не настолько умный, что бы понимать это. Извините
Sherzod
Ах, да, забыл стикер
Sherzod
Loyd
А что там не понимать? Зашёл в цепочку --- залочил, вышел --- разлочил
Sherzod
А что там не понимать? Зашёл в цепочку --- залочил, вышел --- разлочил
это понятно. То есть, это как бы золотая середина, не лочим всю таблицу, а только кусок? При этом не занимаемся извратом ввиде поэлементного лока
Kerrigan
пул локов что ли?
Loyd
Ну это по локу на каждую цепочку. В идеале должно стремится к поэлементному, чтобы константное время держать