/
niceSOFT
/
valgrind
Обзор
Документация
Войти
/
niceSOFT
/
valgrind
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
drd/tests/std_mutex.cpp
39 строк
578 B
Bart Van Assche
drd/tests/std_mutex: Add a unit test for std::mutex
16 янв 2020, 07:01
16 янв 2020, 07:01
d6efbcb
Код
Авторство
О чём код?
// See also https://bugs.kde.org/show_bug.cgi?id=416286 #include <mutex> #include <iostream> #include <thread> #include <vector> class counter { public: counter(): mutex() {} void get() { std::unique_lock<std::mutex> lock(mutex); } private: std::mutex mutex; }; static counter& get_counter() { static counter manager; return manager; } static void do_work() { get_counter().get(); } int main() { std::vector<std::thread> v; for (int i = 0; i < 16; i++) v.emplace_back([]{ do_work(); }); for (auto& t : v) t.join(); std::cerr << "Done.\n"; }