Я пытаюсь улучшить производительность потокового приложения с крайними сроками в реальном времени. Он работает на Windows Mobile и написан на C/С++. У меня есть подозрение, что высокая частота переключения потоков может вызывать ощутимые накладные расходы, но не может ни доказать, ни опровергнуть это. Как известно, отсутствие доказательств не является доказательством противоположности:).
Таким образом, мой вопрос двоякий:
-
Если существует вообще, где можно найти какие-либо фактические измерения стоимости переключения контекста потока?
-
Не тратя время на запись тестового приложения, каковы способы оценки затрат на переключение потоков в существующем приложении?
-
Кто-нибудь знает, как узнать количество переключателей контекста (вкл./выкл.) для данного потока?