blob: 1a19264f4b6aa383bbf3106864ed51eeff921894 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
util/concurrency/ files
msg.h - message passing between threads
mutex.h - small enhancements that wrap boost::mutex
also SimpleMutex
mvar.h
This is based on haskell's MVar synchronization primitive:
http://www.haskell.org/ghc/docs/latest/html/libraries/base/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.
race.h
RACECHECK
rwlock.h - read/write locks (RWLock)
RWLock
RWLockRecursive
RWLockRecursiveNongreedy
spin_lock.h
synchronization.h
Notification, NotifyAll
threadlocal.h
thread_pool.h
value.h
Guarded
DiagStr
mapsf
goofy things that need reworking:
list.h
task.h
|