Loading core/java/android/tracing/perfetto/DataSourceInstance.java +4 −0 Original line number Diff line number Diff line Loading @@ -69,4 +69,8 @@ public abstract class DataSourceInstance implements AutoCloseable { public final void release() { mDataSource.releaseDataSourceInstance(mInstanceIndex); } public final int getInstanceIndex() { return mInstanceIndex; } } core/java/android/tracing/transition/TransitionDataSource.java +12 −3 Original line number Diff line number Diff line Loading @@ -24,8 +24,8 @@ import android.tracing.perfetto.StartCallbackArguments; import android.tracing.perfetto.StopCallbackArguments; import android.util.proto.ProtoInputStream; import java.util.HashMap; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; /** * @hide Loading @@ -38,6 +38,9 @@ public class TransitionDataSource private final Runnable mOnFlushStaticCallback; private final Runnable mOnStopStaticCallback; private final ConcurrentHashMap<Integer, ConcurrentHashMap<String, Integer>> mHandlerMappings = new ConcurrentHashMap<>(); public TransitionDataSource(Runnable onStart, Runnable onFlush, Runnable onStop) { super(DATA_SOURCE_NAME); this.mOnStartStaticCallback = onStart; Loading @@ -47,11 +50,16 @@ public class TransitionDataSource @Override protected TlsState createTlsState(CreateTlsStateArgs<DataSourceInstance> args) { return new TlsState(); return new TlsState(args.getDataSourceInstanceLocked().getInstanceIndex()); } public class TlsState { public final Map<String, Integer> handlerMapping = new HashMap<>(); public final Map<String, Integer> handlerMapping; public TlsState(int instanceIndex) { handlerMapping = mHandlerMappings .computeIfAbsent(instanceIndex, index -> new ConcurrentHashMap<>()); } } @Override Loading @@ -70,6 +78,7 @@ public class TransitionDataSource @Override protected void onStop(StopCallbackArguments args) { mOnStopStaticCallback.run(); mHandlerMappings.remove(instanceIndex); } }; } Loading Loading
core/java/android/tracing/perfetto/DataSourceInstance.java +4 −0 Original line number Diff line number Diff line Loading @@ -69,4 +69,8 @@ public abstract class DataSourceInstance implements AutoCloseable { public final void release() { mDataSource.releaseDataSourceInstance(mInstanceIndex); } public final int getInstanceIndex() { return mInstanceIndex; } }
core/java/android/tracing/transition/TransitionDataSource.java +12 −3 Original line number Diff line number Diff line Loading @@ -24,8 +24,8 @@ import android.tracing.perfetto.StartCallbackArguments; import android.tracing.perfetto.StopCallbackArguments; import android.util.proto.ProtoInputStream; import java.util.HashMap; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; /** * @hide Loading @@ -38,6 +38,9 @@ public class TransitionDataSource private final Runnable mOnFlushStaticCallback; private final Runnable mOnStopStaticCallback; private final ConcurrentHashMap<Integer, ConcurrentHashMap<String, Integer>> mHandlerMappings = new ConcurrentHashMap<>(); public TransitionDataSource(Runnable onStart, Runnable onFlush, Runnable onStop) { super(DATA_SOURCE_NAME); this.mOnStartStaticCallback = onStart; Loading @@ -47,11 +50,16 @@ public class TransitionDataSource @Override protected TlsState createTlsState(CreateTlsStateArgs<DataSourceInstance> args) { return new TlsState(); return new TlsState(args.getDataSourceInstanceLocked().getInstanceIndex()); } public class TlsState { public final Map<String, Integer> handlerMapping = new HashMap<>(); public final Map<String, Integer> handlerMapping; public TlsState(int instanceIndex) { handlerMapping = mHandlerMappings .computeIfAbsent(instanceIndex, index -> new ConcurrentHashMap<>()); } } @Override Loading @@ -70,6 +78,7 @@ public class TransitionDataSource @Override protected void onStop(StopCallbackArguments args) { mOnStopStaticCallback.run(); mHandlerMappings.remove(instanceIndex); } }; } Loading