summaryrefslogtreecommitdiff
blob: 5c132164ce149800bf0e06846db03367a0de9b2f (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
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
	<herd>haskell</herd>
	<maintainer>
		<email>haskell@gentoo.org</email>
	</maintainer>
	<longdescription>
		The @concurrent-extra@ package offers among other things the
		following selection of synchronisation primitives:
		
		* @Broadcast@: Wake multiple threads by broadcasting a value.
		
		* @Event@: Wake multiple threads by signalling an event.
		
		* @Lock@: Enforce exclusive access to a resource. Also known as a
		binary semaphore or mutex. The package additionally provides an
		alternative that works in the @STM@ monad.
		
		* @RLock@: A lock which can be acquired multiple times by the same
		thread. Also known as a reentrant mutex.
		
		* @ReadWriteLock@: Multiple-reader, single-writer locks. Used to
		protect shared resources which may be concurrently read, but only
		sequentially written.
		
		* @ReadWriteVar@: Concurrent read, sequential write variables.
		
		Please consult the API documentation of the individual modules for
		more detailed information.
		
		This package was inspired by the concurrency libraries of Java and
		Python.
	</longdescription>
</pkgmetadata>