Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
grpc_core::Sleep Class Reference

#include <sleep.h>

Public Member Functions

Poll< absl::Statusoperator() ()
 
Sleepoperator= (const Sleep &)=delete
 
Sleepoperator= (Sleep &&other) noexcept
 
 Sleep (const Sleep &)=delete
 
 Sleep (Sleep &&other) noexcept
 
 Sleep (Timestamp deadline)
 
 ~Sleep ()
 

Private Types

enum  Stage { Stage::kInitial, Stage::kStarted, Stage::kDone }
 

Private Member Functions

Stage stage_ ABSL_GUARDED_BY (mu_)
 
Waker waker_ ABSL_GUARDED_BY (mu_)
 
void OnTimer ()
 

Private Attributes

Timestamp deadline_
 
Mutex mu_
 
grpc_event_engine::experimental::EventEngine::TaskHandle timer_handle_
 

Detailed Description

Definition at line 35 of file src/core/lib/promise/sleep.h.

Member Enumeration Documentation

◆ Stage

enum grpc_core::Sleep::Stage
strongprivate
Enumerator
kInitial 
kStarted 
kDone 

Definition at line 64 of file src/core/lib/promise/sleep.h.

Constructor & Destructor Documentation

◆ Sleep() [1/3]

grpc_core::Sleep::Sleep ( Timestamp  deadline)
explicit

Definition at line 28 of file src/core/lib/promise/sleep.cc.

◆ ~Sleep()

grpc_core::Sleep::~Sleep ( )

Definition at line 30 of file src/core/lib/promise/sleep.cc.

◆ Sleep() [2/3]

grpc_core::Sleep::Sleep ( const Sleep )
delete

◆ Sleep() [3/3]

grpc_core::Sleep::Sleep ( Sleep &&  other)
inlinenoexcept

Definition at line 42 of file src/core/lib/promise/sleep.h.

Member Function Documentation

◆ ABSL_GUARDED_BY() [1/2]

Stage stage_ grpc_core::Sleep::ABSL_GUARDED_BY ( mu_  )
private

◆ ABSL_GUARDED_BY() [2/2]

Waker waker_ grpc_core::Sleep::ABSL_GUARDED_BY ( mu_  )
private

◆ OnTimer()

void grpc_core::Sleep::OnTimer ( )
private

Definition at line 47 of file src/core/lib/promise/sleep.cc.

◆ operator()()

Poll< absl::Status > grpc_core::Sleep::operator() ( )

Definition at line 57 of file src/core/lib/promise/sleep.cc.

◆ operator=() [1/2]

Sleep& grpc_core::Sleep::operator= ( const Sleep )
delete

◆ operator=() [2/2]

Sleep& grpc_core::Sleep::operator= ( Sleep &&  other)
inlinenoexcept

Definition at line 49 of file src/core/lib/promise/sleep.h.

Member Data Documentation

◆ deadline_

Timestamp grpc_core::Sleep::deadline_
private

Definition at line 67 of file src/core/lib/promise/sleep.h.

◆ mu_

Mutex grpc_core::Sleep::mu_
private

Definition at line 69 of file src/core/lib/promise/sleep.h.

◆ timer_handle_

grpc_event_engine::experimental::EventEngine::TaskHandle grpc_core::Sleep::timer_handle_
private

Definition at line 68 of file src/core/lib/promise/sleep.h.


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


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