Как направить все ресурсы телефона на выполнение программы?
Я использую библиотеку opencv под андроид, вкратце программа находит нужный кадр из видео и определяет рост и параметры человека. На выполнение этой части кода(выполняется параллельно) уходит примерно 1.5 минуты на телефоне , есть ли какой-то способ , чтобы из приложения указать, что надо задействовать все ресурсы телефона? Или допустим использовать несколько процессоров? P.S. хотя тот же код выполняли на java (Intelijie Idea) , он работал за 10 секунд.
Ответы (1 шт):
Ну прямо вот все ресурсы использовать не получится, но можно попробовать поиграть с приоритетами вашего процесса:
android.os.Process.setThreadPriority(priority);
По умолчанию приоритет равен 0, по идее можно повысить приоритет:
priority -
inta Linux priority level, from -20 for highest scheduling priority to 19 for lowest scheduling priority.
Update
Если речь идет об AsyncTask, то повысить приоритет можно так:
protected final MyResult doInBackground(MyInput... myInput) {
Process.setThreadPriority(priority);
// blah-blah
}