21 #ifndef GRPCXX_ALARM_H
22 #define GRPCXX_ALARM_H
54 static_cast<void*
>(&tag_),
nullptr);
65 static_cast<void*
>(&tag_),
nullptr);
73 Alarm(
Alarm&& rhs) : tag_(rhs.tag_), alarm_(rhs.alarm_) {
97 AlarmEntry(
void* tag) : tag_(tag) {}
98 void Set(
void* tag) { tag_ = tag; }
99 bool FinalizeResult(
void** tag,
bool* status)
override {
114 #endif // GRPCXX_ALARM_H
void Set(CompletionQueue *cq, const T &deadline, void *tag)
Trigger an alarm instance on completion queue cq at the specified time.
Definition: alarm.h:62
A thin wrapper around grpc_alarm (see / / src/core/surface/alarm.h).
Definition: alarm.h:38
Alarm(CompletionQueue *cq, const T &deadline, void *tag)
DEPRECATED: Create and set a completion queue alarm instance associated to cq.
Definition: alarm.h:51
An interface allowing implementors to process and filter event tags.
Definition: completion_queue_tag.h:26
Alarm & operator=(const Alarm &)=delete
Classes that require gRPC to be initialized should inherit from this class.
Definition: grpc_library.h:37
If you are trying to use CompletionQueue::AsyncNext with a time class that isn't either gpr_timespec ...
Definition: time.h:40
grpc_completion_queue * cq()
Returns a raw pointer to the underlying grpc_completion_queue instance.
Definition: completion_queue.h:189
GRPCAPI void grpc_alarm_set(grpc_alarm *alarm, grpc_completion_queue *cq, gpr_timespec deadline, void *tag, void *reserved)
Set a completion queue alarm instance associated to cq.
struct grpc_alarm grpc_alarm
An alarm associated with a completion queue.
Definition: grpc_types.h:60
A thin wrapper around grpc_completion_queue (see src/core/lib/surface/completion_queue.h).
Definition: completion_queue.h:94
Alarm(Alarm &&rhs)
Alarms are movable.
Definition: alarm.h:73
Alarm()
Create an unset completion queue alarm.
Definition: alarm.h:41
GRPCAPI void grpc_alarm_destroy(grpc_alarm *alarm, void *reserved)
Destroy the given completion queue alarm, cancelling it in the process.
void Cancel()
Cancel a completion queue alarm.
Definition: alarm.h:90
GRPCAPI grpc_alarm * grpc_alarm_create(void *reserved)
Create a completion queue alarm instance.
GRPCAPI void grpc_alarm_cancel(grpc_alarm *alarm, void *reserved)
Cancel a completion queue alarm.
Alarm & operator=(Alarm &&rhs)
Definition: alarm.h:76
~Alarm()
Destroy the given completion queue alarm, cancelling it in the process.
Definition: alarm.h:84