title: Is there any approach of shared mutex for a short shared-operations and few unique operations?
body: <p>As known <code>std::shared_timed_mutex</code> (C++14) and <code>std::shared_mutex</code> (C++17) has a performance advantage over <code>std::mutex</code> <strong>only for a very long</strong> <code>std::shared_lock</code>s (reads-operations), and when <code>std::shared_lock</code>s  more than <code>std::unique_lock</code>s. </p>
  
  <p>But even if most of its are read operations, and they are short, then <code>std::mutex</code> will be faster - that is why in the C++11 standard <code>std::shared_mutex</code> and <code>std::shared_timed_mutex</code> were not included immediately.</p>
  
  <p>Is there any approach or implementation of some kind of shared mutex, which has a performance advantage over <code>std::mutex</code>, also <strong>for a short operations</strong>, if the reads are not just more, and a lot more as below?  </p>
  
  <p><code>std::unique_lock</code> / <code>std::shared_lock</code> = 1 / 1 000 000 000 000</p>
  
  <p>Is there any approach of shared mutex for a short shared-operations and few unique operations?</p>