#include <mutex>

std::mutex mtx;

void critical_section() {
    std::lock_guard<std::mutex> lock(mtx);
    // mutex lock 中の処理をする
    // lock_guardがスコープを抜けると自動でunlock()される
}
