Definition in file sthread.h.
Go to the source code of this file.
Classes | |
class | sthread_base_t |
Base class for sthreads. See timeout_in_ms, timeout_t. More... | |
class | ThreadFunc |
A callback class for traversing the list of all sthreads. More... | |
struct | tatas_lock |
A test-and-test-and-set spinlock. More... | |
struct | w_pthread_lock_t |
Wrapper for pthread mutexes, with a queue-based lock API. More... | |
struct | occ_rwlock |
A multiple-reader/single-writer lock based on pthreads (blocking). More... | |
class | sthread_t |
Thread class for all threads that use the Shore Storage Manager. More... | |
Defines | |
#define | USE_PTHREAD_MUTEX 1 |
Determines that we use pthread-based mutex for queue_based_lock_t. | |
Typedefs | |
typedef w_pthread_lock_t | queue_based_block_lock_t |
typedef w_pthread_lock_t | queue_based_spin_lock_t |
typedef w_pthread_lock_t | queue_based_lock_t |
typedef w_list_t< sthread_t, queue_based_lock_t > | sthread_list_t |
Functions | |
ostream & | operator<< (ostream &o, const sthread_t &t) |
void | print_timeout (ostream &o, const sthread_base_t::timeout_in_ms timeout) |
#define USE_PTHREAD_MUTEX 1 |
Determines that we use pthread-based mutex for queue_based_lock_t.
The Shore-MT release contained alternatives for scalable locks in certain places in the storage manager; it was released with these locks replaced by pthreads-based mutexes.
The alternatives were described in [JPHAF1], but have not been tested for the Shore 6.0 release. The code for these alternatives is distributed for further experimentation, but it is not not compiled in.
If you wish to experiment with the mcs locks, you'll have to undefine this macro.