Форум программистов, компьютерный форум CyberForum.ru

Понижение загрузки ЦП, используя Sleep (1) - C++

Восстановить пароль Регистрация
 
TamaGOch
9 / 9 / 0
Регистрация: 11.12.2012
Сообщений: 152
01.07.2013, 20:09     Понижение загрузки ЦП, используя Sleep (1) #1
Не сильно мудрёная программа заметно грузит ресурсы процессора. Возможные точки нагрузки:
1) Программа запускается посредством CreateProcess, параллельно родительской программе, т.е. возможно, что такой метод не осиливает мой процессор
2) Дочерняя программа по 2-3 раза в течение своего времени вызывает внешние программы функцией system, т.е. возможно я не знаком с подводными камнями этой функции
3) Происходит весьма частое обращение к бинарному файлу, открывается на дозапись
и в целом, вся работа программы происходит в цикле while (true),
вычитал, что очень сильно расхваливают слип с каким-либо небольшим значением, как бы разгружая ЦП, в каждом из имеющихся while-циклов я поставил в начале Sleep (1), но это не принесло ощутимой разницы, поэтому я решил обратиться с вопросом, стоит ли дополнительно проставить аналогичные "спячки" в других местах и увеличить значение в них, или же принимать какое-либо другое решение
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.07.2013, 20:09     Понижение загрузки ЦП, используя Sleep (1)
Посмотрите здесь:

C++ sleep в с++
C++ Sleep
C++ Понижение регистра в строке
C++ функция sleep()
аналог Sleep C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
TamaGOch
9 / 9 / 0
Регистрация: 11.12.2012
Сообщений: 152
01.07.2013, 20:41  [ТС]     Понижение загрузки ЦП, используя Sleep (1) #2
Есть вариант, что я не верно понимаю момент, где описывается нагрузка именно программы на процессор. Программа, запущенная параллельно родительской выделена фоном, на скрине есть две цифры, внизу, и напротив самого процесса, какой из них мне стоит брать во внимание?
Миниатюры
Понижение загрузки ЦП, используя Sleep (1)  
I.M.
 Аватар для I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
01.07.2013, 21:52     Понижение загрузки ЦП, используя Sleep (1) #3
На число, стоящее в одной строке с процессом.
Зачем гадать, что именно тормозит? Надо взять и проверить это
-=ЮрА=-
Заблокирован
Автор FAQ
01.07.2013, 22:42     Понижение загрузки ЦП, используя Sleep (1) #4
Цитата Сообщение от TamaGOch Посмотреть сообщение
поэтому я решил обратиться с вопросом, стоит ли дополнительно проставить аналогичные "спячки" в других местах и увеличить значение в них, или же принимать какое-либо другое решение
- конечно же использование слипа попахивает нубством - для блокировки потока правильней использорвать EVENT-ы и WaitFor функции
Убежденный
Системный программист
 Аватар для Убежденный
14200 / 6215 / 986
Регистрация: 02.05.2013
Сообщений: 10,363
Завершенные тесты: 1
02.07.2013, 10:44     Понижение загрузки ЦП, используя Sleep (1) #5
Цитата Сообщение от TamaGOch Посмотреть сообщение
вся работа программы происходит в цикле while (true),
Скорее всего, причина в этом. Если поток не выполняет полезной нагрузки,
ему полагается спать, ожидая какого-нибудь сигнала, а не крутиться в цикле,
съедая процессорные ресурсы (особенно заметно на однопроцессорных машинах).
Yandex
Объявления
02.07.2013, 10:44     Понижение загрузки ЦП, используя Sleep (1)
Ответ Создать тему
Опции темы

Текущее время: 18:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru