<p><pre><code>  &gt; And for the regex example the author doesn&#x27;t use C++ 
  &gt; std::regex and std::futures (std::async) like he does 
  &gt; for Rust.
</code></pre>
Rust&#x27;s standard library implements neither regexes nor futures, so the code you&#x27;re seeing must be coming from third-party libraries. If anything, this comparison would favor C++, since its own libraries are likely to be more mature and optimized than Rust&#x27;s.<p><pre><code>  &gt; It worries me though the examples are still using 
  &gt; threads and mutexes.
</code></pre>
You shouldn&#x27;t be worried. :) C++ may require higher-level abstraction to make concurrency tenable, but Rust was designed as a concurrent language from the outset. Rust&#x27;s type system prevents data races at compile-time, so programming with raw threads isn&#x27;t nearly as fraught as it is in every other language and refactoring concurrent code can be performed with compiler-assisted confidence. I recommend Aaron Turon&#x27;s blog post &quot;Fearless Concurrency with Rust&quot;: <a href="http:&#x2F;&#x2F;blog.rust-lang.org&#x2F;2015&#x2F;04&#x2F;10&#x2F;Fearless-Concurrency.html" rel="nofollow">http:&#x2F;&#x2F;blog.rust-lang.org&#x2F;2015&#x2F;04&#x2F;10&#x2F;Fearless-Concurrency.ht...</a><p><pre><code>  &gt; Also lock free data structures dont scale that well 
  &gt; either. As they still require synchronization and that 
  &gt; hurts scaling
</code></pre>
This is another assumption that I suspect that Rust obviates. Let me recommend another of Aaron Turon&#x27;s blog posts, &quot;Lock-freedom without garbage collection&quot;: <a href="http:&#x2F;&#x2F;aturon.github.io&#x2F;blog&#x2F;2015&#x2F;08&#x2F;27&#x2F;epoch&#x2F;" rel="nofollow">http:&#x2F;&#x2F;aturon.github.io&#x2F;blog&#x2F;2015&#x2F;08&#x2F;27&#x2F;epoch&#x2F;</a>