mr.DIMAS
При наличии Arc<Mutex<_>>, у вас какие-то дополнительные архитектурные ограничения от рекурсивного захвата мьютексов или вы просто внимательно проверяете код, чтобы подобного не допустить?
trex
Просто тестами отлавливаю подобное. Вообще дедлоков была все парочка за все время написания движка, и то, если я правильно помню, в звуковом движке.
mr.DIMAS
Я скорее не про дедлоки, а про UB https://internals.rust-lang.org/t/standard-library-synchronizatio… behavior/8439
trex
> Проблему с рекурсивными мьютексами как-то решали?
В parking_lot есть рекурсивные мутехи. https://docs.rs/parking_lot/0.9.0/parking_lot/type.ReentrantMutex.html
Как корабль назовешь, так он и поплывет...
Вот если бы назвали Gold, или там Silver какой-нибудь,
вместо Ржавчина...
trex
Интересное чтиво. Вообще про UB написано в документации, и как и написано по ссылке - это ограничение примитивов синхронизации самой ОС.
nes
К чему это вообще?
mr.DIMAS
> - Автоматическое управление ресурсами
это что такое ?
mr.DIMAS
Это я придираюсь к названию ЯП.
innuendo
Arc
nes
Зря.
mr.DIMAS
> Arc
конечно на с++ это сделать сложнее
innuendo
Да.
mr.DIMAS
> это ограничение примитивов синхронизации самой ОС
нам, как программистам, от этого не легче
nbkolchin
> В parking_lot есть рекурсивные мутехи
Спасибо, посмотрю
А как linked list в расте делается?
mr.DIMAS
> https://github.com/rust-lang/rust/blob/master/src/liballoc/collec…
> inked_list.rs
Тут от списка только название. Нельзя вставлять элементы в середину.