MySQL 26.7.0
Source Code Documentation
mysql::csa::Locked_resource Struct Reference

Resource guard class, used to check if resource was successfully locked and release resource in destructor. More...

#include <resource_monitor.h>

Public Member Functions

 Locked_resource ()=default
 Default construct. More...
 
 Locked_resource (Resource_entry *resource, std::size_t requested, bool locked)
 Construct. More...
 
bool is_locked () const
 Check if resource is locked. More...
 
 ~Locked_resource ()
 Unlocks resource if locked. More...
 
 Locked_resource (Locked_resource &&) noexcept=delete
 
Locked_resourceoperator= (Locked_resource &&) noexcept=delete
 
 Locked_resource (const Locked_resource &)=delete
 
Locked_resourceoperator= (const Locked_resource &)=delete
 

Private Attributes

Resource_entrym_resource {nullptr}
 Resource handle. More...
 
std::size_t m_requested_amount {0}
 Requested amount. More...
 
bool m_is_locked {false}
 True if successfully locked. More...
 

Detailed Description

Resource guard class, used to check if resource was successfully locked and release resource in destructor.

Constructor & Destructor Documentation

◆ Locked_resource() [1/4]

mysql::csa::Locked_resource::Locked_resource ( )
default

Default construct.

◆ Locked_resource() [2/4]

mysql::csa::Locked_resource::Locked_resource ( Resource_entry resource,
std::size_t  requested,
bool  locked 
)

Construct.

Parameters
resourceResource handle
requestedThe requested amount
lockedTrue if successfully locked

◆ ~Locked_resource()

mysql::csa::Locked_resource::~Locked_resource ( )

Unlocks resource if locked.

◆ Locked_resource() [3/4]

mysql::csa::Locked_resource::Locked_resource ( Locked_resource &&  )
deletenoexcept

◆ Locked_resource() [4/4]

mysql::csa::Locked_resource::Locked_resource ( const Locked_resource )
delete

Member Function Documentation

◆ is_locked()

bool mysql::csa::Locked_resource::is_locked ( ) const

Check if resource is locked.

◆ operator=() [1/2]

Locked_resource & mysql::csa::Locked_resource::operator= ( const Locked_resource )
delete

◆ operator=() [2/2]

Locked_resource & mysql::csa::Locked_resource::operator= ( Locked_resource &&  )
deletenoexcept

Member Data Documentation

◆ m_is_locked

bool mysql::csa::Locked_resource::m_is_locked {false}
private

True if successfully locked.

◆ m_requested_amount

std::size_t mysql::csa::Locked_resource::m_requested_amount {0}
private

Requested amount.

◆ m_resource

Resource_entry* mysql::csa::Locked_resource::m_resource {nullptr}
private

Resource handle.


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