On 04/03/14 03:55 PM, Tony Arcieri wrote: > On Tuesday, March 4, 2014, John Mija <jon...@proinbox.com > <mailto:jon...@proinbox.com>> wrote: > > True, but Go includes a built-in data race detector: > http://golang.org/doc/__articles/race_detector.html > <http://golang.org/doc/articles/race_detector.html> > > > A data race detector can only detect problems when it observes them. > Unfortunately data races are typically finnickey, hard-to-reproduce > things that often manifest only in productions and at the worst time > possible, for example when you're experincing high load because people > are actually interested in using your thing. > > Rust largely avoids data races ahead-of-time using a "sufficiently smart > compiler"
Well, it completely avoids them in the safe subset. It's up to the programmer to avoid data races in `unsafe` blocks as it is in a typical language without safe concurrency like C, Java and Go. When the standard library provides data parallelism and some concurrent data structures, there will be very few reasons to ever use `unsafe` for direct access to shared memory. I doubt there would even be a single use case in all of Servo.
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Rust-dev mailing list Rust-dev@mozilla.org https://mail.mozilla.org/listinfo/rust-dev