Concurrency in Rust

Computers have come a long way in the last 35 years or so. Originally, we had the likes of the 6502, 6809, and Z80 processors. These were known as single processing units; they could only run a single program at a time and software ran in a linear fashion (this meant that performing two tasks at once wasn't possible).

Processors moved on, and from the single processing units (single-core), we moved on to processors that contained multiple processing units (multi-core). Programming languages evolved to allow for this form of processor, and running multiple operations (threads) at the same time became a reality.

Rust, being a very modern language, also has this ability to multiprocess. All of the benefits are available that you would expect from Rust (such as memory safety and avoiding race conditions), but there are some other things that you need to be aware of.

In this chapter, we will:

  • Understand the mechanisms by which Rust performs concurrent processes
  • Learn how to use threads
  • See the difference between different threading models
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset