TextView.setText simple provoca un uso de CPU del 40%

La ejecución de mi aplicación causa ~ 40% de uso de CPU en mi teléfono:

final String position = String.format("%02d:%02d:%02d", time.getHours(), time.getMinutes(),
                time.getSeconds());
getActivity().runOnUiThread(new Runnable() {
    @Override
    public void run() {
         c.mTxtPosition.setText(position);
         ...

Al comentar elsetText método de uso de la CPU cae al nivel esperado de ~ 4%. El método se invoca cada segundo y actualiza ImageViews, CustomViews ... sin causar el mismo exceso de carga. Además del uso de la CPU, dalvik informa constantemente la recolección de basura de aproximadamente 10-1000 objetos con solo llamarsetText ().

Creando un tracefile como este:

Debug.startMethodTracing("setText");
c.mTxtPosition.setText(position);
Debug.stopMethodTracing();

traceview enumera los siguientes métodos como Top 5 por su respectivo% de CPU exclusivo:

ViewParent.invalidateChildInParent (16%)View.requestLayout (11%)ViewGroup.invalidateChild (9%)TextView.setText (7%)nivel superior (6%)

¿Alguien tiene una explicación para esto?

Respuestas a la pregunta(4)

Su respuesta a la pregunta