LINUX.ORG.RU

История изменений

Исправление smilessss, (текущая версия) :

https://imgur.com/Oiq3EIq.png


что имеем


https://stackoverflow.com/questions/3666753/c-threads-and-simple-blocking-mec...


берём

boost::mutex lock;


делаем там где не нужно создавать лоад
lock.lock();


а когда всё таки нужно делаем
lock.unlock();


результат на скрине
теперь на 3500 бинарях и 30000 тредах - лоад авереж 5-8 и cpu в среднем загружен на 35%, уже намного лучше

эксперты по с++ - подскажите все эти boost::mutex lock или mutex::scoped_lock или любые другие мутексы - они одинаково работают в плане производительности?

в мысла неважно чем лочить верно

Исправление smilessss, :

https://imgur.com/Oiq3EIq.png


что имеем


https://stackoverflow.com/questions/3666753/c-threads-and-simple-blocking-mec...


берём

boost::mutex lock;


делаем там где не нужно создавать лоад
lock.lock();


а когда всё таки нужно делаем
lock.unlock();


результат на скрине
теперь на 3500 бинарях - лоад авереж 5-8 и cpu в среднем загружен на 35%, уже намного лучше

эксперты по с++ - подскажите все эти boost::mutex lock или mutex::scoped_lock или любые другие мутексы - они одинаково работают в плане производительности?

в мысла неважно чем лочить верно

Исходная версия smilessss, :

https://imgur.com/Oiq3EIq.png


что имеем


https://stackoverflow.com/questions/3666753/c-threads-and-simple-blocking-mec...


берём

boost::mutex lock;


делаем там где не нужно создавать лоад
lock.lock();


а когда всё таки нужно делаем
lock.unlock();



результат на скрине
теперь на 3500 бинарях - лоад авереж 5-8 и cpu в среднем загружен на 35%, уже намного лучше

эксперты по с++ - подскажите все эти boost::mutex lock или mutex::scoped_lock или любые другие мутексы - они одинаково работают в плане производительности?

в мысла неважно чем лочить верно