Go to the documentation of this file.
19 #include "absl/base/internal/low_level_alloc.h"
20 #ifndef ABSL_LOW_LEVEL_ALLOC_MISSING
24 #include "absl/base/attributes.h"
25 #include "absl/base/internal/spinlock.h"
26 #include "absl/base/internal/thread_identity.h"
27 #include "absl/synchronization/internal/per_thread_sem.h"
31 namespace synchronization_internal {
87 pts->
state.store(base_internal::PerThreadSynch::State::kAvailable,
88 std::memory_order_relaxed);
94 identity->
ticker.store(0, std::memory_order_relaxed);
95 identity->
wait_start.store(0, std::memory_order_relaxed);
96 identity->
is_idle.store(
false, std::memory_order_relaxed);
97 identity->
next =
nullptr;
112 if (identity ==
nullptr) {
143 #endif // ABSL_LOW_LEVEL_ALLOC_MISSING
std::atomic< int > ticker
void OneTimeInitThreadIdentity(base_internal::ThreadIdentity *identity)
static ABSL_CONST_INIT base_internal::ThreadIdentity * thread_identity_freelist
std::atomic< int > wait_start
base_internal::ThreadIdentity * CreateThreadIdentity()
#define ABSL_NAMESPACE_END
static intptr_t RoundUp(intptr_t addr, intptr_t align)
#define ABSL_NAMESPACE_BEGIN
static void Free(void *s) ABSL_ATTRIBUTE_SECTION(malloc_hook)
PerThreadSynch per_thread_synch
bool suppress_fatal_errors
std::atomic< int > * blocked_count_ptr
ABSL_CONST_INIT void SetCurrentThreadIdentity(ThreadIdentity *identity, ThreadIdentityReclaimerFunction reclaimer)
static base_internal::ThreadIdentity * NewThreadIdentity()
static void Init(base_internal::ThreadIdentity *identity)
void ClearCurrentThreadIdentity()
int64_t next_priority_read_cycles
static ABSL_CONST_INIT base_internal::SpinLock freelist_lock(absl::kConstInit, base_internal::SCHEDULE_KERNEL_ONLY)
CONSTEXPR_F fields align(second_tag, fields f) noexcept
static void * Alloc(size_t request) ABSL_ATTRIBUTE_SECTION(malloc_hook)
static void ResetThreadIdentityBetweenReuse(base_internal::ThreadIdentity *identity)
static void ReclaimThreadIdentity(void *v)
std::atomic< State > state
static constexpr int kAlignment
std::atomic< bool > is_idle
SynchLocksHeld * all_locks
grpc
Author(s):
autogenerated on Fri May 16 2025 02:58:06