Cache AndroidBlockGuardPolicy to avoid allocation.
Every incoming Binder call ends up triggering a BlockGuardPolicy update, which would thrash between new AndroidBlockGuardPolicy instances and BlockGuard.LAX_POLICY, causing GC churn. This change avoids the extra allocations by recycling a single AndroidBlockGuardPolicy in a ThreadLocal. Worst-case thrashing case is now 10% faster; from 7.46us to 6.65us. Bug: 9424568 Change-Id: I9c3b1c097a2aecc9b1f109a824cf3ea319fb3393
Loading
Please register or sign in to comment