include/amino/smr.h File Reference

#include <cassert>
#include <algorithm>
#include <iostream>
#include <vector>
#include <string.h>
#include <stdexcept>
#include <amino/stdatomic.h>
#include <amino/util.h>
#include <pthread.h>

Go to the source code of this file.

Namespaces

namespace  internal

Classes

class  internal::SMRListNode< T >
 This class can represents a node inside retired list of SMR, and a node inside the hazard pointer list. More...
class  internal::HPRecType< T, K >
 This is the class to store hazard point. More...
class  internal::SMRThreadLocal< T >
class  internal::SMR< T, K >
 SMR way to prevent ABA for lock-free data structrue based on the following paper:. More...

Defines

#define PTHREAD

Functions

template<typename TT, int K>
void internal::retireHPRec (void *thr_local)
 This function is used to clean thread-local SMR data.
template<typename T, int K>
SMR< T, K > * internal::getSMR ()
 Factory method to return instance of SMR<T, K>.


Define Documentation

#define PTHREAD

SMR way to prevent ABA for lock-free data structrue based on the following paper: Hazard Pointers: Safe Memory Reclamation for Lock-Free Objects MM Michael - IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2004

Author:
Mo Jiong Qiu, Zhi Gan (ganzhi@gmail.com)


Generated on Tue Dec 9 13:39:39 2008 for Amino by  doxygen 1.5.6