Classes | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
grpc::testing::Client Class Referenceabstract

#include <client.h>

Inheritance diagram for grpc::testing::Client:
Inheritance graph
[legend]

Classes

class  Thread
 

Public Member Functions

void AwaitThreadsCompletion ()
 
 Client ()
 
double GetLatencyCollectionIntervalInSeconds ()
 
virtual int GetPollCount ()
 
bool IsClosedLoop ()
 
ClientStats Mark (bool reset)
 
gpr_timespec NextIssueTime (int thread_idx)
 
bool ThreadCompleted ()
 
virtual ~Client ()
 

Protected Member Functions

void CompleteThread ()
 
virtual void DestroyMultithreading ()=0
 
void EndThreads ()
 
void MaybeStartRequests ()
 
std::function< gpr_timespec()> NextIssuer (int thread_idx)
 
void SetupLoadTest (const ClientConfig &config, size_t num_threads)
 
void StartThreads (size_t num_threads)
 
virtual void ThreadFunc (size_t thread_idx, Client::Thread *t)=0
 

Protected Attributes

bool closed_loop_
 
InterarrivalTimer interarrival_timer_
 
int last_reset_poll_count_
 
double median_latency_collection_interval_seconds_
 
std::vector< gpr_timespecnext_time_
 
gpr_event start_requests_
 
bool started_requests_
 
std::mutex thread_completion_mu_
 
gpr_atm thread_pool_done_
 
std::vector< std::unique_ptr< Thread > > threads_
 
std::condition_variable threads_complete_
 
size_t threads_remaining_
 
std::unique_ptr< UsageTimertimer_
 

Detailed Description

Definition at line 145 of file client.h.

Constructor & Destructor Documentation

◆ Client()

grpc::testing::Client::Client ( )
inline

Definition at line 147 of file client.h.

◆ ~Client()

virtual grpc::testing::Client::~Client ( )
inlinevirtual

Definition at line 154 of file client.h.

Member Function Documentation

◆ AwaitThreadsCompletion()

void grpc::testing::Client::AwaitThreadsCompletion ( )
inline

Definition at line 222 of file client.h.

◆ CompleteThread()

void grpc::testing::Client::CompleteThread ( )
inlineprotected

Definition at line 417 of file client.h.

◆ DestroyMultithreading()

virtual void grpc::testing::Client::DestroyMultithreading ( )
protectedpure virtual

◆ EndThreads()

void grpc::testing::Client::EndThreads ( )
inlineprotected

Definition at line 348 of file client.h.

◆ GetLatencyCollectionIntervalInSeconds()

double grpc::testing::Client::GetLatencyCollectionIntervalInSeconds ( )
inline

Definition at line 233 of file client.h.

◆ GetPollCount()

virtual int grpc::testing::Client::GetPollCount ( )
inlinevirtual

◆ IsClosedLoop()

bool grpc::testing::Client::IsClosedLoop ( )
inline

Definition at line 242 of file client.h.

◆ Mark()

ClientStats grpc::testing::Client::Mark ( bool  reset)
inline

Definition at line 156 of file client.h.

◆ MaybeStartRequests()

void grpc::testing::Client::MaybeStartRequests ( )
inlineprotected

Definition at line 410 of file client.h.

◆ NextIssuer()

std::function<gpr_timespec()> grpc::testing::Client::NextIssuer ( int  thread_idx)
inlineprotected

Definition at line 388 of file client.h.

◆ NextIssueTime()

gpr_timespec grpc::testing::Client::NextIssueTime ( int  thread_idx)
inline

Definition at line 244 of file client.h.

◆ SetupLoadTest()

void grpc::testing::Client::SetupLoadTest ( const ClientConfig &  config,
size_t  num_threads 
)
inlineprotected

Definition at line 355 of file client.h.

◆ StartThreads()

void grpc::testing::Client::StartThreads ( size_t  num_threads)
inlineprotected

Definition at line 340 of file client.h.

◆ ThreadCompleted()

bool grpc::testing::Client::ThreadCompleted ( )
inline

Definition at line 253 of file client.h.

◆ ThreadFunc()

virtual void grpc::testing::Client::ThreadFunc ( size_t  thread_idx,
Client::Thread t 
)
protectedpure virtual

Member Data Documentation

◆ closed_loop_

bool grpc::testing::Client::closed_loop_
protected

Definition at line 336 of file client.h.

◆ interarrival_timer_

InterarrivalTimer grpc::testing::Client::interarrival_timer_
protected

Definition at line 398 of file client.h.

◆ last_reset_poll_count_

int grpc::testing::Client::last_reset_poll_count_
protected

Definition at line 408 of file client.h.

◆ median_latency_collection_interval_seconds_

double grpc::testing::Client::median_latency_collection_interval_seconds_
protected

Definition at line 338 of file client.h.

◆ next_time_

std::vector<gpr_timespec> grpc::testing::Client::next_time_
protected

Definition at line 399 of file client.h.

◆ start_requests_

gpr_event grpc::testing::Client::start_requests_
protected

Definition at line 405 of file client.h.

◆ started_requests_

bool grpc::testing::Client::started_requests_
protected

Definition at line 406 of file client.h.

◆ thread_completion_mu_

std::mutex grpc::testing::Client::thread_completion_mu_
protected

Definition at line 401 of file client.h.

◆ thread_pool_done_

gpr_atm grpc::testing::Client::thread_pool_done_
protected

Definition at line 337 of file client.h.

◆ threads_

std::vector<std::unique_ptr<Thread> > grpc::testing::Client::threads_
protected

Definition at line 395 of file client.h.

◆ threads_complete_

std::condition_variable grpc::testing::Client::threads_complete_
protected

Definition at line 403 of file client.h.

◆ threads_remaining_

size_t grpc::testing::Client::threads_remaining_
protected

Definition at line 402 of file client.h.

◆ timer_

std::unique_ptr<UsageTimer> grpc::testing::Client::timer_
protected

Definition at line 396 of file client.h.


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


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