Classes | Public Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
grpc_core::BasicMemoryQuota Class Referencefinal

#include <memory_quota.h>

Inheritance diagram for grpc_core::BasicMemoryQuota:
Inheritance graph
[legend]

Classes

class  WaitForSweepPromise
 

Public Member Functions

 BasicMemoryQuota (std::string name)
 
void FinishReclamation (uint64_t token, Waker waker)
 
std::pair< double, size_t > InstantaneousPressureAndMaxRecommendedAllocationSize () const
 
absl::string_view name () const
 
ReclaimerQueuereclaimer_queue (size_t i)
 
void Return (size_t amount)
 
void SetSize (size_t new_size)
 
void Start ()
 
void Stop ()
 
void Take (size_t amount)
 

Private Attributes

std::atomic< intptr_tfree_bytes_ {kInitialSize}
 
std::string name_
 
std::atomic< size_t > quota_size_ {kInitialSize}
 
ActivityPtr reclaimer_activity_
 
ReclaimerQueue reclaimers_ [kNumReclamationPasses]
 
std::atomic< uint64_treclamation_counter_ {0}
 

Static Private Attributes

static constexpr intptr_t kInitialSize = std::numeric_limits<intptr_t>::max()
 

Friends

class ReclamationSweep
 

Detailed Description

Definition at line 223 of file memory_quota.h.

Constructor & Destructor Documentation

◆ BasicMemoryQuota()

grpc_core::BasicMemoryQuota::BasicMemoryQuota ( std::string  name)
inlineexplicit

Definition at line 226 of file memory_quota.h.

Member Function Documentation

◆ FinishReclamation()

void grpc_core::BasicMemoryQuota::FinishReclamation ( uint64_t  token,
Waker  waker 
)

Definition at line 427 of file memory_quota.cc.

◆ InstantaneousPressureAndMaxRecommendedAllocationSize()

std::pair< double, size_t > grpc_core::BasicMemoryQuota::InstantaneousPressureAndMaxRecommendedAllocationSize ( ) const

Definition at line 450 of file memory_quota.cc.

◆ name()

absl::string_view grpc_core::BasicMemoryQuota::name ( ) const
inline

Definition at line 252 of file memory_quota.h.

◆ reclaimer_queue()

ReclaimerQueue* grpc_core::BasicMemoryQuota::reclaimer_queue ( size_t  i)
inline

Definition at line 249 of file memory_quota.h.

◆ Return()

void grpc_core::BasicMemoryQuota::Return ( size_t  amount)

Definition at line 445 of file memory_quota.cc.

◆ SetSize()

void grpc_core::BasicMemoryQuota::SetSize ( size_t  new_size)

Definition at line 404 of file memory_quota.cc.

◆ Start()

void grpc_core::BasicMemoryQuota::Start ( )

Definition at line 337 of file memory_quota.cc.

◆ Stop()

void grpc_core::BasicMemoryQuota::Stop ( )

Definition at line 402 of file memory_quota.cc.

◆ Take()

void grpc_core::BasicMemoryQuota::Take ( size_t  amount)

Definition at line 415 of file memory_quota.cc.

Friends And Related Function Documentation

◆ ReclamationSweep

friend class ReclamationSweep
friend

Definition at line 255 of file memory_quota.h.

Member Data Documentation

◆ free_bytes_

std::atomic<intptr_t> grpc_core::BasicMemoryQuota::free_bytes_ {kInitialSize}
private

Definition at line 263 of file memory_quota.h.

◆ kInitialSize

constexpr intptr_t grpc_core::BasicMemoryQuota::kInitialSize = std::numeric_limits<intptr_t>::max()
staticconstexprprivate

Definition at line 258 of file memory_quota.h.

◆ name_

std::string grpc_core::BasicMemoryQuota::name_
private

Definition at line 280 of file memory_quota.h.

◆ quota_size_

std::atomic<size_t> grpc_core::BasicMemoryQuota::quota_size_ {kInitialSize}
private

Definition at line 265 of file memory_quota.h.

◆ reclaimer_activity_

ActivityPtr grpc_core::BasicMemoryQuota::reclaimer_activity_
private

Definition at line 271 of file memory_quota.h.

◆ reclaimers_

ReclaimerQueue grpc_core::BasicMemoryQuota::reclaimers_[kNumReclamationPasses]
private

Definition at line 268 of file memory_quota.h.

◆ reclamation_counter_

std::atomic<uint64_t> grpc_core::BasicMemoryQuota::reclamation_counter_ {0}
private

Definition at line 278 of file memory_quota.h.


The documentation for this class was generated from the following files:


grpc
Author(s):
autogenerated on Fri May 16 2025 03:03:35