Похожие чаты

I want to learn once and for all the the

different between Mutex / Arc (and more generics for accessing), in async / sync access and lifetime.
I think it's the most diffcult part in Rust.
Do you know some article about it or some idea for simple project to try it and learn?

9 ответов

34 просмотра

Mutex = mutual exclusion, prevent 2 blocks of code from running at the same time in different threads Arc = atomic reference count, count how many people are referring to an object across threads, Arc uses Mutex to read and update the reference count

Thomas
Mutex = mutual exclusion, prevent 2 blocks of code...

arc uses an atomic value for the counter, it does not use a mutex

there's a free book available on this https://marabos.nl/atomics/foreword.html disclaimer: never read it, but heard good things, you can try it

Jacob- Автор вопроса
Thomas
Mutex = mutual exclusion, prevent 2 blocks of code...

You mean usually people wrap mutex with arc ig

Holmes
arc uses an atomic value for the counter, it does ...

atomics are a superior way to do a multithreaded mutable value, mutex is a bad way, but mutex would also work

Jacob- Автор вопроса
Holmes
there's a free book available on this https://mara...

Pretty long, but looks like it can answer many questions i have on the complex area of Rust

Jacob
Pretty long, but looks like it can answer many que...

if you've never heard the term race-condition, the book (probably) contains all the theory you need to learn. if you've heard about it and just need a fresher in rust, I'd guess it's the wrong book for you. but I didn't read it.

Jacob- Автор вопроса
Holmes
if you've never heard the term race-condition, the...

I prefer books that talk about deep-rooted concepts in the language, than "the latest stuff" so that's what I liked

Похожие вопросы

Обсуждают сегодня

Random thoughts. Need mode opinions. def main(): conn = psycopg.connect(user="postgres", password="example", host="localhost", port=5432, dbname="postgres") with conn...
Artem
13
А как старый хаскел с новым стыковать ? потому как тут работает https://play.haskell.org/saved/C3xpMzcd, а вот тут https://stepik.org/lesson/7602/step/9?unit=1473 нет ошибка C...
Fedor
131
Народ, кто шарит в расширенных разделах (EBR/EPR) на дисках с разметками MBR? Везде пишут (в вики рус/англ) в частности + другие источники смотрел, что первый сектор расширенн...
Eugene Krasnikov (ᴊɪɴ x)
1
что насчет пагинга? на осдеве непонятно(
Vi Chapmann 🪙
26
Moneor is doing well - im happy to have bought some when it was lower. What do you guys think about Pirate Chain? Can it be an alternative to Monero? Im into privacy coins and...
Alex
15
Guys what is ur real (no jokes) expectation of link price during this cycle?
Hobbyist
28
hey everyone I'm not able to input come characters in my flatpak apps, they get ignored by the application. all other non-flatpak apps are fine with these characters. I search...
elo
20
Вопрос я правильно понимаю что в коде newtype ArrowMap k v = ArrowMap { getArrowMap :: k -> Maybe v } getArrowMap есть функция типа k -> Maybe v, если да, то не понимаю задач...
Fedor
64
>>> Failed to install app-alternatives/awk-4, Log file: >>> '/var/tmp/portage/app-alternatives/awk-4/temp/build.log' * Messages for package app-alternatives/awk-4: * Pa...
[cocoa] wizzy hell
1
Hey everyone! How's your weekend going so far?
Noah Noure
17
Карта сайта