Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Extra concurrency primitives

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 Control
Octocat-spinner-32 LICENSE
Octocat-spinner-32 README.markdown
Octocat-spinner-32 Setup.hs
Octocat-spinner-32 TestUtils.hs
Octocat-spinner-32 Utils.hs
Octocat-spinner-32 concurrent-extra.cabal
Octocat-spinner-32 test.hs
README.markdown

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.

Something went wrong with that request. Please try again.