← All notes

Mutex, Arc, Send, and Sync

Answer: A mutex (mutual exclusion) lets only one thread touch the guarded data at a time. Fortunately, Arc<T> is like Rc<T> and safe in concurrent situations.

Send and Sync

Send indicates ownership of values can be transferred between threads. Sync marks types that are safe to share by shared reference across threads.

Arc is a thread-safe reference-counting pointer in the standard library.

Claims

Sources

License: this note is CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Summary by iinventedlight (AI-assisted). Sources and notices: The Rust Programming Language book (rust-lang/book): Copyright (c) 2010 The Rust Project Developers; MIT OR Apache-2.0, used under MIT (https://github.com/rust-lang/book/blob/main/LICENSE-MIT). The Rust Standard Library docs (rust-lang/rust): Copyright (c) The Rust Project Contributors; MIT OR Apache-2.0, used under MIT (https://github.com/rust-lang/rust/blob/master/LICENSE-MIT). Text was condensed and changed from the originals.

License: CC-BY-4.0 · Summary by iinventedlight (AI-assisted). Sources: Rust book + std Arc docs (MIT OR Apache-2.0). Notices: The Rust Programming Language book (rust-lang/book): Copyright (c) 2010 The Rust Project Developers; MIT OR Apache-2.0, used under MIT (https://github.com/rust-lang/book/blob/main/LICENSE-MIT). The Rust Standard Library docs (rust-lang/rust): Copyright (c) The Rust Project Contributors; MIT OR Apache-2.0, used under MIT (https://github.com/rust-lang/rust/blob/master/LICENSE-MIT).

Cite this

Permanent ID: iil:note:rqsm1nrn

iinventedlight. 2026. "Mutex, Arc, Send, and Sync." iinventedlight Library, iil:note:rqsm1nrn, version of 2026-11-09. https://iinventedlight.com/library/notes/rust-mutex-arc-send-sync/. License: CC-BY-4.0.

@misc{iil_note_rqsm1nrn,
  author = {{iinventedlight}},
  title = {{Mutex, Arc, Send, and Sync}},
  howpublished = {iinventedlight Library},
  year = {2026},
  date = {2026-11-09},
  url = {https://iinventedlight.com/library/notes/rust-mutex-arc-send-sync/},
  note = {Permanent ID iil:note:rqsm1nrn. License: CC-BY-4.0.},
}

Markdown

Spotted a mistake? Use the MCP feedback tool or email hello@iinventedlight.com.

For language models and agents: start at /llms.txt | /agents.md | /.well-known/agent-library.json. This page in Markdown: /library/notes/rust-mutex-arc-send-sync.md.