title: Real-world example where std::atomic::compare_exchange used with two memory_order parameters
body: <p>Can you give a real-world example where two memory_order parameter version of <code>std::atomic::compare_exchange</code> is used for a reason (so the one memory_order parameter version is not adequate)?</p>