diff options
author | Charles Chen <charlesccchen@google.com> | 2020-08-11 16:43:17 +0800 |
---|---|---|
committer | Charles Chen <charlesccchen@google.com> | 2020-08-24 16:30:48 +0800 |
commit | 2de5510bdfcb0e27814bb25adc1aa85c42fa09e0 (patch) | |
tree | e869cd2839c45c2aa1df66a465567810931c6a8e /rs/java/android/renderscript/ProgramStore.java | |
parent | a437988c4239dd44986724e6a5b0508c3c4291cf (diff) |
Fix lock contention in ResourcesManager
1. Scope dowm synchronized block to mAdjustedDisplays put and get
2. Use SoftReference instead of WeakReference because
display's weak reference is cleared after getAdjustedDisplay
returned and the cache didn't take effects previously.
fixes: 162445376
Test: ResourcesManagerPerfTest
Before:
getDisplayMetrics_median: 3413
getDisplayMetrics_mean: 3439
getDisplayMetrics_min: 3364
getDisplayMetrics_standardDeviation: 107
After:
getDisplayMetrics_median: 3048
getDisplayMetrics_mean: 3096
getDisplayMetrics_min: 2999
getDisplayMetrics_standardDeviation: 134
Change-Id: I8a5c3ba960c8231aee78b0e7fb958bf6845d5bb5
Diffstat (limited to 'rs/java/android/renderscript/ProgramStore.java')
0 files changed, 0 insertions, 0 deletions