AcsBulkdata::ThreadSyncGuard

NAME
SYNOPSIS
Detailed Description
Constructor & Destructor Documentation
Member Function Documentation
Member Data Documentation
Author

NAME

AcsBulkdata::ThreadSyncGuard −

SYNOPSIS

#include <bulkDataNTThreadSyncGuard.h>

Public Member Functions

ThreadSyncGuard ()

ThreadSyncGuard (const char *label, pthread_mutex_t *m)

ThreadSyncGuard (const char *label, pthread_mutex_t *m, const ACS::TimeInterval &to)

~ThreadSyncGuard ()

void acquire (const ACS::TimeInterval &to)

Private Member Functions

ThreadSyncGuard (const ThreadSyncGuard &)

ThreadSyncGuard & operator= (const ThreadSyncGuard &)

Private Attributes

std::string m_label

pthread_mutex_t * m_mutex_p

bool m_acquired

Detailed Description

An automatic unlocking guard that allows a timed wait.

Constructor & Destructor Documentation

AcsBulkdata::ThreadSyncGuard::ThreadSyncGuard () An empty constructor to force a healthy and no-op construction of our ACS base.

AcsBulkdata::ThreadSyncGuard::ThreadSyncGuard (const char * label, pthread_mutex_t * m) Instanciates but it does not try to lock.

AcsBulkdata::ThreadSyncGuard::ThreadSyncGuard (const char * label, pthread_mutex_t * m, const ACS::TimeInterval & to) Instanciates and tries to lock.

AcsBulkdata::ThreadSyncGuard::~ThreadSyncGuard () Destructor unlocks the mutex if needed.

AcsBulkdata::ThreadSyncGuard::ThreadSyncGuard (const ThreadSyncGuard &) [private] Copying from a second guard is not part of the semantic, the mutex state is not be transfer from one object to a second.

Member Function Documentation

void AcsBulkdata::ThreadSyncGuard::acquire (const ACS::TimeInterval & to) Acquire with timeout.

ThreadSyncGuard& AcsBulkdata::ThreadSyncGuard::operator= (const ThreadSyncGuard &) [private]

Member Data Documentation

bool AcsBulkdata::ThreadSyncGuard::m_acquired [private] Whether the mutex is currently locked or not.

std::string AcsBulkdata::ThreadSyncGuard::m_label [private] A short description to add meaningful content to error logs.

pthread_mutex_t* AcsBulkdata::ThreadSyncGuard::m_mutex_p [private] Mutex provided by the user.

Author

Generated automatically by Doxygen for ACS-2015.2 C++ API from the source code.