24#ifndef BINLOG_ATOMIC_BCG_TICKET_GUARD_H
25#define BINLOG_ATOMIC_BCG_TICKET_GUARD_H
40class AtomicBgcTicketGuard;
83 bool inc_next_before_release =
false);
86 std::reference_wrapper<AtomicBgcTicket>
RAII opaque for AtomicBgcTicket (set in use/set used synchronization operations in constructor/destru...
Definition: atomic_bgc_ticket_guard.h:44
BgcTicket m_prev_value
previous ticket value, obtained during the "acquire" op
Definition: atomic_bgc_ticket_guard.h:93
BgcTicket get_next() const
"Next" value accessor.
Definition: atomic_bgc_ticket_guard.cc:46
std::reference_wrapper< AtomicBgcTicket > m_ref
For threads to synchronize properly, AtomicBgcTicketGuard instances must operate on the same instance...
Definition: atomic_bgc_ticket_guard.h:87
BgcTicket get_prev() const
"Previous" value accessor.
Definition: atomic_bgc_ticket_guard.cc:47
AtomicBgcTicketGuard & operator=(AtomicBgcTicketGuard const &)=delete
void set_next(const BgcTicket &next)
Function used to manually manipulate the "next" ticket value.
Definition: atomic_bgc_ticket_guard.cc:48
virtual ~AtomicBgcTicketGuard()
Definition: atomic_bgc_ticket_guard.cc:41
BgcTicket m_next_value
value to be set during the "release" op
Definition: atomic_bgc_ticket_guard.h:92
AtomicBgcTicketGuard(AtomicBgcTicketGuard const &)=delete
Implements atomic ops on BgcTicket object.
Definition: atomic_bgc_ticket.h:43
Represents the Binlog Group Commit Ticket - BGC Ticket.
Definition: bgc_ticket.h:54