pstore2
Classes | Typedefs
transaction.hpp File Reference

The data store transaction class. More...

#include <mutex>
#include <type_traits>
#include "pstore/core/address.hpp"
#include "pstore/core/database.hpp"
#include "pstore/core/time.hpp"
Include dependency graph for transaction.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  pstore::transaction_base
 The database transaction class. More...
 
class  pstore::transaction< LockGuard >
 
class  pstore::lock_guard< MutexType >
 lock_guard fills a similar role as a type such as std::scoped_lock<> in that it provides convenient RAII-style mechanism for owning a mutex for the duration of a scoped block. More...
 
class  pstore::transaction_mutex
 A mutex which is used to protect a pstore file from being simultaneously written by multiple threads or processes. More...
 

Typedefs

using pstore::transaction_lock = lock_guard< transaction_mutex >
 

Functions

transaction< transaction_lock > pstore::begin (database &db, transaction_lock &lock)
 Creates a new transaction. Every operation performed on a transaction instance can be potentially undone. The object's commit() method commits the work performed by all operations since the start of the transaction.
 
transaction< transaction_lock > pstore::begin (database &db, transaction_lock &&lock)
 
transaction< transaction_lock > pstore::begin (database &db)
 

Detailed Description

The data store transaction class.