title: C++14 shared_timed_mutex VS C++11 mutex
body: <p>I've an shared hash table between 8 threads (i've an 8 core PC), each thread reads and writes in the hash table.</p>
  
  <p>in example 1 i used classic mutex and all 8 core are at 100% 
  in example 2 i used shared_timed_mutex because read access can be in competition but all 8 core are at 40% </p>
  
  <p>Where is the problem?</p>
  
  <pre><code>example 1:
  mutex mutex_hash;
  
  -- thread --
  mutex_hash.lock();
  //read
  mutex_hash.unlock();
  ..
  mutex_hash.lock();
  //write
  mutex_hash.unlock();
  </code></pre>
  
  <p>============================</p>
  
  <pre><code>example 2:
  shared_timed_mutex mutex_hash;
  
  -- thread --
  mutex_hash.lock_shared();
  //read
  mutex_hash.unlock_shared();
  ..
  mutex_hash.lock();
  //write
  mutex_hash.unlock();
  </code></pre>