doc: Tweak the wording of the memory model goals
This commit is contained in:
parent
6da09c3b43
commit
d9317a174e
@ -988,16 +988,17 @@ illuminate several of Rust's unique features as we encounter them.
|
|||||||
|
|
||||||
Rust has three competing goals that inform its view of memory:
|
Rust has three competing goals that inform its view of memory:
|
||||||
|
|
||||||
* Memory safety: memory that is managed by and is accessible to the
|
* Memory safety: Memory that is managed by and is accessible to the
|
||||||
Rust language must be guaranteed to be valid; under normal
|
Rust language must be guaranteed to be valid. Under normal
|
||||||
circumstances it must be impossible for Rust to trigger a
|
circumstances it must be impossible for Rust to trigger a
|
||||||
segmentation fault or leak memory
|
segmentation fault or leak memory.
|
||||||
* Performance: high-performance low-level code must be able to employ
|
* Performance: High-performance low-level code must be able to employ
|
||||||
a number of allocation strategies; low-performance high-level code
|
a number of allocation strategies. Tracing garbage collection must be
|
||||||
must be able to employ a single, garbage-collection-based, heap
|
optional and, if it is not desired, memory safety must not be compromised.
|
||||||
allocation strategy
|
Less performance-critical, high-level code should be able to employ a single,
|
||||||
* Concurrency: Rust must maintain memory safety guarantees, even for
|
garbage-collection-based, heap allocation strategy.
|
||||||
code running in parallel
|
* Concurrency: Rust code must be free of in-memory data races. (Note that other
|
||||||
|
types of races are still possible.)
|
||||||
|
|
||||||
## How performance considerations influence the memory model
|
## How performance considerations influence the memory model
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user