我有一個手寫識別應用程序 - 用戶用手指畫,應用程序識別字符。識別引擎在具有最小可能優先級的工作線程中運行 - Thread.MIN_PRIORITY
。這是純粹的CPU /內存算法,無論是什麼I/O。不過,當線程正在工作時,UI變得相當不連貫。手指筆畫顯着延遲。我也注意到觸摸事件迷路了。當工作線程工作時,UI變得不穩定
這不正是線程應該避免的嗎?爲什麼UI線程餓死CPU?如何說服系統把工作線程當作低優先級的後臺線程呢?
它看起來像系統引入(自願或因CPU飢餓)invalidate()
和onDraw()
之間的延遲。我能以某種方式降低延遲嗎?
測試相對較舊的硬件 - HTC Magic與Android 2.1。
定期收益效果最好。 –
嗨S.D.,你能修正這個代碼塊中的縮進嗎?另外,你可以嘗試添加一個[語言標籤](http://meta.stackexchange.com/a/75019/321006)來防止語法高亮者認爲yield是關鍵字嗎?我認爲自動熒光筆假定這是c#代碼。 – jrh