Является ли излишним создавать отдельный поток для службы, которая только один раз считывает файл и не выполняет никакой активной обработки впоследствии? Интересно, будет ли система работать лучше, если такие службы просто владеют своими собственными данными (например, классом с копией данных конфигурации) вместо создания услуги и управления потоком для него. Несмотря на то, что служба не делает ничего активного после инициализации, кажется, что использование услуги со своим собственным потоком только для обмена данными может быть неоправданным ресурсом.
Вопросы:
неоптимально создавать отдельный поток для каждой службы в приложении C ++ с несколькими услугами, особенно когда служба делает минимальную работу, например, чтение файла один раз? < /p >
< /li>
Могла бы модель потока на услуги внести свой вклад в высокую среднюю нагрузку, и если да, лучше ли просто иметь услуги владеют копией требуемых данных вместо создания потоков для каждой службы? Будет ли это создавать задержку и нехватку процессора? Рефактор вся моя архитектура, которую я просто хочу правильно понять, перспективная и процессор
Редактировать: для большего контекста я работаю над встроенной системой с 4 ядрами и в настоящее время имею среднее значение нагрузки со временем около 20 и не гораздо больше доступного процессора; Я ищу оптимизацию.
Подробнее здесь: https://stackoverflow.com/questions/794 ... onsumption
Мобильная версия