diff options
author | Oleg Shaldybin <olegsh@google.com> | 2023-06-16 02:02:13 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2023-06-16 02:02:13 +0000 |
commit | 1488d1d1de4862d56164641ff2db3d9bed345cb6 (patch) | |
tree | 248e54a31421fdcdebfaf7e83aace32f7bc8a8ad /impl/src/main/java/io/perfmark/impl/MostlyThreadLocalMarkHolder.java | |
parent | 68ac043b69bd19a8c64348357861b1df81c627b3 (diff) | |
parent | 4a4b713b448fa7874945e616ea82dc77062cdd78 (diff) | |
download | perfmark-1488d1d1de4862d56164641ff2db3d9bed345cb6.tar.gz |
Import perfmark v-0.26 am: 9d6c9c0f44 am: a14e499d34 am: e0ee6365ff am: 4a4b713b44
Original change: https://android-review.googlesource.com/c/platform/external/perfmark/+/2627042
Change-Id: I67444728877d1d6f1062b5453c0211bc53912749
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
Diffstat (limited to 'impl/src/main/java/io/perfmark/impl/MostlyThreadLocalMarkHolder.java')
-rw-r--r-- | impl/src/main/java/io/perfmark/impl/MostlyThreadLocalMarkHolder.java | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/impl/src/main/java/io/perfmark/impl/MostlyThreadLocalMarkHolder.java b/impl/src/main/java/io/perfmark/impl/MostlyThreadLocalMarkHolder.java new file mode 100644 index 0000000..a17c8c0 --- /dev/null +++ b/impl/src/main/java/io/perfmark/impl/MostlyThreadLocalMarkHolder.java @@ -0,0 +1,37 @@ +/* + * Copyright 2022 Carl Mastrangelo + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.perfmark.impl; + +final class MostlyThreadLocalMarkHolder extends LocalMarkHolder { + + private static final MostlyThreadLocal localMarkHolder = new MostlyThreadLocal(); + + MostlyThreadLocalMarkHolder() {} + + @Override + public MarkHolder acquire() { + return localMarkHolder.get(); + } + + @Override + public void release(MarkHolder markHolder) {} + + @Override + public void clear() { + localMarkHolder.remove(); + } +} |