concurrency

Submitted by Ralph McArdell on Sun, 04 Aug 2013 15:49:14 +0100
Updated: Sat, 01 Nov 2014 11:19:26 +0000

I have posted some example code on GitHub showing the Shared Immutable, Exclusive Setup ideas discussed in the Comments on comments to Herb Sutter's updated GotW #6b solution (part 2) blog post to demonstrate the ideas:

https://github.com/ralph-mcardell/dibase-blog-sharedimmutable-exclusivesetup

Submitted by Ralph McArdell on Mon, 08 Jul 2013 15:53:13 +0100
Updated: Mon, 12 Oct 2015 08:52:41 +0100

Previously[1] I wondered, from musing when reading Herb Sutter’s updated Guru of the Week 6b[2] article, how one might – in C++11 – enforce a concurrent usage pattern in which an object can only be modified after creation by the creating thread until all modifications are done when the object becomes immutable and concurrently accessible. Concurrent access before an object becomes immutable is considered an error as are attempts to modify an object that is immutable.

Submitted by Ralph McArdell on Fri, 31 May 2013 16:49:05 +0100
Updated: Thu, 16 Jul 2015 10:11:41 +0100

I have been following Herb Sutter on his Sutter’s Mill[1] website and while reading the solution and comments to the posted solution to GotW #6b Solution: Const-Correctness, Part 2[2] some thoughts popped into my head.