mongo/util/concurrency
dwight 3d758307ca rs better logging 2010-09-15 11:29:59 -04:00
..
list.h rs reconf 2010-07-12 22:12:57 -04:00
msg.h trying to fix SERVER-1483 2010-08-04 12:13:38 -04:00
mutex.h mutexdebugger fix 2010-09-15 11:03:27 -04:00
mvar.h move mvar and thread_pool to util/concurrency 2010-05-26 13:35:28 -04:00
readme.txt minor 2010-07-01 17:54:08 -04:00
rwlock.h make lowercase for solaris 2010-07-23 12:29:30 -04:00
spin_lock.cpp Build fix (Win 64bit) 2010-06-02 14:25:02 -04:00
spin_lock.h Support for cumulative stats for mongod 2010-06-02 13:43:18 -04:00
task.cpp rs better logging 2010-09-15 11:29:59 -04:00
task.h rs attempt fix for weird crash 2010-07-28 11:06:04 -04:00
thread_pool.cpp move mvar and thread_pool to util/concurrency 2010-05-26 13:35:28 -04:00
thread_pool.h cleaning 2010-07-01 17:52:07 -04:00
value.h rs elect better 2010-07-22 15:10:23 -04:00
vars.cpp mutexdebugger fix 2010-09-15 11:03:27 -04:00

readme.txt

util/concurrency/ files

list.h - a list class that is lock-free for reads
rwlock.h - read/write locks (RWLock)
msg.h - message passing between threads
task.h - an abstraction around threads
mutex.h - small enhancements that wrap boost::mutex
thread_pool.h 
mvar.h
 This is based on haskell's MVar synchronization primitive:
 http://www.haskell.org/ghc/docs/latest/html/libraries/base-4.2.0.0/Control-Concurrent-MVar.html
 It is a thread-safe queue that can hold at most one object.
 You can also think of it as a box that can be either full or empty.
value.h
 Atomic wrapper for values/objects that are copy constructable / assignable