January 2019
Intermediate to advanced
316 pages
8h 8m
English
These marker traits are fundamental to Rust's multithreading policies. They have distinct purposes:
These marker traits are implemented in all basic types of the standard library and can be inherited for custom types (if all properties of a type are Sync, then the type itself is Sync too).
Implementing Sync or Send is unsafe because there is no way for the compiler to know if you are right and the code can be shared/sent between threads, which is why it's very unusual to do this.
In case your program requires this depth of Rust programming, be sure to read up on this topic ...