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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
TamaGOch
9 / 9 / 0
Регистрация: 11.12.2012
Сообщений: 152
#1

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

01.07.2013, 20:09. Просмотров 886. Ответов 4
Метки нет (Все метки)

Не сильно мудрёная программа заметно грузит ресурсы процессора. Возможные точки нагрузки:
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)
Посмотрите здесь:

Функция sleep() C++
C++ sleep в с++
C++ Sleep
C++ Понижение регистра в строке
C++ Понижение приоритета процесса
C++ функция sleep()
аналог Sleep C++
функция Sleep() ? C++
фуекция sleep C++
C++ Sleep в C++
Задержки в Sleep C++
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 функции
Убежденный
Системный программист
 Аватар для Убежденный
14635 / 6596 / 1045
Регистрация: 02.05.2013
Сообщений: 10,865
Завершенные тесты: 1
02.07.2013, 10:44     Понижение загрузки ЦП, используя Sleep (1) #5
Цитата Сообщение от TamaGOch Посмотреть сообщение
вся работа программы происходит в цикле while (true),
Скорее всего, причина в этом. Если поток не выполняет полезной нагрузки,
ему полагается спать, ожидая какого-нибудь сигнала, а не крутиться в цикле,
съедая процессорные ресурсы (особенно заметно на однопроцессорных машинах).
Yandex
Объявления
02.07.2013, 10:44     Понижение загрузки ЦП, используя Sleep (1)
Ответ Создать тему
Опции темы

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