> * Objects in the borrowed set are grayed before each incremental GC slice. >
*mutator* In a garbage-collected<http://www.memorymanagement.org/glossary/g.html#garbage.collection> system, the part that executes the user code, which allocates<http://www.memorymanagement.org/glossary/a.html#allocate> objects <http://www.memorymanagement.org/glossary/o.html#object> and modifies, or *mutates*, them. For purposes of describing incremental garbage collection<http://www.memorymanagement.org/glossary/i.html#incremental.garbage.collection>, the system is divided into the *mutator* and the *collector(2)<http://www.memorymanagement.org/glossary/c.html#collector-2> *. These can be separate threads of computation, or interleaved within the same thread. The user code issues allocation requests, but the allocator code is usually considered part of the collector. Indeed, one of the major ways of scheduling the other work of the collector is to perform a little of it at every allocation. While the mutator mutates, it implicitly frees<http://www.memorymanagement.org/glossary/f.html#free-1> storage <http://www.memorymanagement.org/glossary/s.html#storage> by overwriting references<http://www.memorymanagement.org/glossary/r.html#reference> . How will Rust deal with the mutator (the part that modifies user code and mutates it ) ? From a high level, will it be run as separate computation threads or within the same computation thread ? -- -Thad Thad on Freebase.com <http://www.freebase.com/view/en/thad_guidry> Thad on LinkedIn <http://www.linkedin.com/in/thadguidry/>
_______________________________________________ Rust-dev mailing list [email protected] https://mail.mozilla.org/listinfo/rust-dev
