Loading config/preloaded-classes-denylist +1 −0 Original line number Diff line number Diff line Loading @@ -9,3 +9,4 @@ android.net.rtp.AudioGroup android.net.rtp.AudioStream android.net.rtp.RtpStream java.util.concurrent.ThreadLocalRandom com.android.internal.jank.InteractionJankMonitor$InstanceHolder core/java/com/android/internal/jank/InteractionJankMonitor.java +5 −10 Original line number Diff line number Diff line Loading @@ -292,7 +292,10 @@ public class InteractionJankMonitor { UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__SHADE_CLEAR_ALL, }; private static volatile InteractionJankMonitor sInstance; private static class InstanceHolder { public static final InteractionJankMonitor INSTANCE = new InteractionJankMonitor(new HandlerThread(DEFAULT_WORKER_NAME)); } private final DeviceConfig.OnPropertiesChangedListener mPropertiesChangedListener = this::updateProperties; Loading Loading @@ -384,15 +387,7 @@ public class InteractionJankMonitor { * @return instance of InteractionJankMonitor */ public static InteractionJankMonitor getInstance() { // Use DCL here since this method might be invoked very often. if (sInstance == null) { synchronized (InteractionJankMonitor.class) { if (sInstance == null) { sInstance = new InteractionJankMonitor(new HandlerThread(DEFAULT_WORKER_NAME)); } } } return sInstance; return InstanceHolder.INSTANCE; } /** Loading Loading
config/preloaded-classes-denylist +1 −0 Original line number Diff line number Diff line Loading @@ -9,3 +9,4 @@ android.net.rtp.AudioGroup android.net.rtp.AudioStream android.net.rtp.RtpStream java.util.concurrent.ThreadLocalRandom com.android.internal.jank.InteractionJankMonitor$InstanceHolder
core/java/com/android/internal/jank/InteractionJankMonitor.java +5 −10 Original line number Diff line number Diff line Loading @@ -292,7 +292,10 @@ public class InteractionJankMonitor { UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__SHADE_CLEAR_ALL, }; private static volatile InteractionJankMonitor sInstance; private static class InstanceHolder { public static final InteractionJankMonitor INSTANCE = new InteractionJankMonitor(new HandlerThread(DEFAULT_WORKER_NAME)); } private final DeviceConfig.OnPropertiesChangedListener mPropertiesChangedListener = this::updateProperties; Loading Loading @@ -384,15 +387,7 @@ public class InteractionJankMonitor { * @return instance of InteractionJankMonitor */ public static InteractionJankMonitor getInstance() { // Use DCL here since this method might be invoked very often. if (sInstance == null) { synchronized (InteractionJankMonitor.class) { if (sInstance == null) { sInstance = new InteractionJankMonitor(new HandlerThread(DEFAULT_WORKER_NAME)); } } } return sInstance; return InstanceHolder.INSTANCE; } /** Loading