Gdy wątek roboczy działa, interfejs użytkownika staje się niestabilny
Mam aplikację do rozpoznawania pisma ręcznego - użytkownik rysuje palcem, aplikacja rozpoznaje znaki. Mechanizm rozpoznawania działa w wątku roboczym, który ma minimalny możliwy priorytet -Thread.MIN_PRIORITY
. Jest to algorytm czysto procesorowy / pamięciowy, bez żadnego we / wy. Mimo to, gdy wątek aktywnie działa, interfejs użytkownika staje się raczej niepewny. Pociągnięcia palców pojawiają się z zauważalnym opóźnieniem. Zauważam też, że zgubiły się wydarzenia dotykowe.
Czy to nie jest dokładnie to, co powinno pomóc w unikaniu wątków? Dlaczego wątek interfejsu użytkownika jest zagłodzony dla procesora? Jak przekonać system do traktowania wątku roboczego jako wątku tła o niskim priorytecie?
Wygląda na to, że system wprowadza (chętnie lub z powodu głodu procesora) opóźnienie międzyinvalidate()
ionDraw()
. Czy mogę jakoś obniżyć to opóźnienie?
Testowanie na stosunkowo starym sprzęcie - HTC Magic z Androidem 2.1.