Да, когда ты опытный Rust-кодер, то это верное решение. А когда тебе неопытному быстро надо написать компилирующийся код, то лучше так. А потом убрать лишние Arc<....> Когда код рабочий это легко изменить. Исправил в объявлении и реализации new и компилятор подсказал где надо в вызовах new это подправить.
На счет этого я добавлю тоже в статью уже завтра. Но я использую такой вариант: use once_cell::sync::Lazy; static HANDLERS: Lazy<Mutex<HashMap<String, i32>>> = Lazy::new(|| { Mutex::new(HashMap::new())}); для обьявления глобально асинхроного синглтона а потом let mut handlers = HANDLERS.lock().await; handlers.insert(disk.to_string(), handler);
Убрал из статьи return - я тоже когда на Scala пишу его не использую ну и на Rust тоже. Просто по привычке для Java кодеров его оставил. В целом согласен для красоты надо убрать пусть ощущают новации в синтаксическом сахаре.
Там в статье говориться про Mutex и про то, что это решение временное, что бы быстро написать рабочий код. И тут сборку мусора никто не натягивает. В Rust ее просто нет )
Мне кажется, проще к своему текущему Java проекту добавить Scala. У меня старый код на Java остался, а все новое в проекте я пишу на Scala и легко вызываю старые вещи писаные на Java из Scala. Там синтаксис куда короче чем Stream от Java.
ucoz это качественый saas сервис для профессионалов в сайто строении знающих html и css
mylivepage это соц сеть владельцев сайтов и сервис ориентирован на выкладку контента, а не на самовыражение через html и css что бы сайт выглядил особо…
Не спорю, но чем цепочка вызовов функций длиннее, тем тяжелей человеку читать код. Хотя она у вас не сильно длинная, но в целом идею вы поняли)
Да, когда ты опытный Rust-кодер, то это верное решение. А когда тебе неопытному быстро надо написать компилирующийся код, то лучше так. А потом убрать лишние Arc<....>
Когда код рабочий это легко изменить. Исправил в объявлении и реализации new и компилятор подсказал где надо в вызовах new это подправить.
нет
На счет этого я добавлю тоже в статью уже завтра.
Но я использую такой вариант:
use once_cell::sync::Lazy;
static HANDLERS: Lazy<Mutex<HashMap<String, i32>>> = Lazy::new(|| { Mutex::new(HashMap::new())});
для обьявления глобально асинхроного синглтона
а потом
let mut handlers = HANDLERS.lock().await;
handlers.insert(disk.to_string(), handler);
Убрал из статьи return - я тоже когда на Scala пишу его не использую ну и на Rust тоже. Просто по привычке для Java кодеров его оставил. В целом согласен для красоты надо убрать пусть ощущают новации в синтаксическом сахаре.
Таки статья дает советы как делать в Rust, а не в Java )
Там в статье говориться про Mutex и про то, что это решение временное, что бы быстро написать рабочий код. И тут сборку мусора никто не натягивает. В Rust ее просто нет )
mylivepage это соц сеть владельцев сайтов и сервис ориентирован на выкладку контента, а не на самовыражение через html и css что бы сайт выглядил особо…
За то что отвечаешь пороча и дезинформируя про другие сервисы.