stm

Software Transactional Memory

Version on this page:2.4.4
LTS Haskell 8.23:2.4.4.1
Stackage Nightly 2017-07-21:2.4.4.1
Latest on Hackage:2.4.4.1
BSD3 licensed
Maintained by libraries@haskell.org

Module documentation for 2.4.4

There are no documented modules for this package.

A modular composable concurrency abstraction.

Changes

Changelog for stm package

2.4.4.1 Dec 2015

  • Add support for base-4.9.0.0

  • Drop support for GHC 6.12 / base-4.2

2.4.4 Dec 2014

  • Add support for base-4.8.0.0

  • Tighten Safe Haskell bounds

  • Add mkWeakTMVar to Control.Concurrent.STM.TMVar

  • Add @since-annotations

2.4.3 Mar 2014

  • Update behaviour of newBroadcastTChanIO to match newBroadcastTChan in causing an error on a read from the broadcast channel

  • Add mkWeakTVar

  • Add isFullTBQueue

  • Fix TChan created via newBroadcastTChanIO to throw same exception on a readTChan as when created via newBroadcastTChan

  • Update to Cabal 1.10 format

2.4.2 Nov 2012

  • Add Control.Concurrent.STM.TSem (transactional semaphore)

  • Add Applicative/Alternative instances of STM for GHC <7.0

  • Throw proper exception when readTChan called on a broadcast TChan

2.4 Jul 2012

  • Add Control.Concurrent.STM.TQueue (a faster TChan)

  • Add Control.Concurrent.STM.TBQueue (a bounded channel based on TQueue)

  • Add Eq instance for TChan

  • Add newBroadcastTChan and newBroadcastTChanIO

  • Some performance improvements for TChan

  • Add cloneTChan

Depends on:
Used by 603 packages:
AERN-Net, AERN-RnToRm-Plot, AMI, Bang, Barracuda, CMQ, Combinatorrent, ConcurrentUtils, Control-Engine, CurryDB, Deadpan-DDP, Dflow, EtaMOO, Euterpea, GLFW-b-demo, GPipe-GLFW, GraphHammer, HAppS-State, HGamer3D-Common, HGamer3D-Data, HaMinitel, Hate, Hermes, Holumbus-Distribution, HsSVN, JYU-Utils, LambdaHack, LogicGrowsOnTrees, LogicGrowsOnTrees-MPI, Lucu, MFlow, MSQueue, NXTDSL, Neks, Nomyx, Nomyx-Core, Nomyx-Rules, Nomyx-Web, PriorityChansConverger, Pugs, Pup-Events-Client, Pup-Events-Demo, Pup-Events-PQueue, Pup-Events-Server, RxHaskell, SafeSemaphore, Saturnin, Scurry, SimpleLog, Snusmumrik, SoOSiM, SpinCounter, Spock, Spock-core, Spock-worker, Stack, StateVar, TCache, TreeCounter, Treiber, UISF, Wheb, Workflow, acid-state, acid-state-dist, acme-missiles, actor, aivika-distributed, aivika-realtime, alarmclock, alms, amqp, angel, ariadne, armada, async, async-extras, async-manager, async-pool, async-refresh, async-refresh-tokens, atomic-modify, avers, avers-server, aws-kinesis-client, bayes-stack, bein, bind-marshal, binding-core, binding-wx, biohazard, bitcoin-api-extra, bittorrent, blank-canvas, ble, bounded-tchan, brick, broccoli, btree-concurrent, buildbox, cabal-install, cache, cached-io, cassandra-cql, cassy, cereal-plus, cgrep, chan-split, chp, chp-plus, cio, clang-pure, classy-prelude, clckwrks, cognimeta-utils, concurrency, concurrent-dns-cache, concurrent-extra, concurrent-output, concurrent-state, conductive-base, conduit-extra, conjure, consistent, consul-haskell, consumers, continuum, control-event, control-timeout, courier, court, cql-io, cqrs-example, cqrs-memory, cqrs-test, d-bus, danibot, data-concurrent-queue, data-ref, ddc-war, debug-me, di, diplomacy-server, discord-rest, distributed-process, distributed-process-async, distributed-process-client-server, distributed-process-execution, distributed-process-extras, distributed-process-fsm, distributed-process-platform, distributed-process-registry, distributed-process-supervisor, distributed-process-systest, distributed-process-task, distributed-process-tests, dockercook, dynobud, engine-io, epass, esotericbot, eventful-memory, eventloop, eventsource-stub-store, eventstore, every, ex-pool, exception-transformers, exceptions, fbmessenger-api, ffmpeg-tutorials, filecache, fileneglect, final, fltkhs-demos, fluent-logger, fold-debounce, fold-debounce-conduit, foreign-var, format-status, fpco-api, fswait, gang-of-threads, giak, git-annex, gitlib-libgit2, gitlib-s3, glazier-pipes, glazier-react, glazier-react-examples, glazier-react-widget, glirc, global, global-variables, gluturtle, google-cloud, graceful, greg-client, gremlin-haskell, h-booru, h-reversi, hack2-handler-mongrel2-http, hackage-mirror, hackage-server, hackport, hactor, hactors, hadoop-rpc, hadoop-tools, halive, hapistrano, happstack-state, hascas, haskbot-core, haskell-lsp, haskell-platform-test, haskell-xmpp, haskoin-node, haskoin-wallet, haskus-utils, hats, hcltest, hcoap, hcron, hdbi, hdbi-tests, hedgehog, hedis, hellage, helm, hermit, heyefi, hgdbmi, hiernotify, himpy, hinterface, hipbot, hlwm, hmemdb, hmidi, hoodle-core, hoodle-render, hruby, hsgsom, hslogstash, hsnsq, hspec-slow, hspec-webdriver, http2, hzulip, ihaskell, ihaskell-rlangqq, imap, immortal, imperative-edsl, imprevu, imprevu-happstack, inc-ref, intricacy, introduction, invariant, io-region, ipc, irc-client, ircbot, iteratee-stm, jobqueue, join, jsaddle, jsaddle-warp, json-rpc, kademlia, kansas-comet, katip-elasticsearch, keenser, keera-hails-mvc-model-lightmodel, keera-hails-mvc-model-protectedmodel, keter, kevin, keysafe, language-puppet, ldap-client, legion, legion-extra, leksah, libinfluxdb, liblawless, libmolude, libssh2-conduit, lifted-protolude, list-prompt, list-t-libcurl, live-sequencer, liveplot, load-balancing, log-base, logentries, logger-thread, logging-effect, macbeth-lib, machines-amazonka, manatee, manatee-anything, manatee-browser, manatee-core, manatee-curl, manatee-editor, manatee-filemanager, manatee-imageviewer, manatee-ircclient, manatee-mplayer, manatee-pdfviewer, manatee-processmanager, manatee-reader, manatee-template, manatee-terminal, manatee-welcome, marvin, matterhorn, mattermost-api, mealstrom, mediabus, mediabus-rtp, memcache-conduit, memcache-haskell, metronome, midair, midisurface, miniplex, moesocks, mole, monad-control, monad-control-aligned, monad-extras, monad-logger, monad-loops-stm, monad-param, monad-stlike-stm, monad-stm, monad-unlift-ref, monadIO, monadic-arrays, monarch, monky, montage, montage-client, mosaico-lib, mqtt-hs, mstate, mudbath, multisetrewrite, myTestlll, nano-erl, nc-indicators, netease-fm, netwire-input-glfw, network-connection, network-minihttp, network-rpca, network-stream, network-topic-models, network-transport-amqp, network-transport-inmemory, network-transport-zeromq, next-ref, noether, nomyx-api, nomyx-core, nomyx-server, nomyx-web, null-canvas, nvim-hs, obd, orc, orchid, orchid-demo, osm-download, parallel-tasks, parconc-examples, pdf-slave-server, perdure, peyotls, pgstream, pipes-async, pipes-cliff, pipes-concurrency, pipes-fluid, pipes-misc, pipes-postgresql-simple, pipes-shell, pointed, pontarius-xmpp, postgrest-ws, powerqueue-levelmem, pqc, prefork, pregame, priority-sync, privileged-concurrency, progress-meter, project-m36, prometheus-client, propellor, protolude, psc-ide, pugs-DrIFT, pugs-compat, pulseaudio, purescript, push-notify, push-notify-ccs, pusher-ws, pvd, queue, quickcheck-state-machine, quoridor-hs, raft, raketka, rapid, reactive-bacon, reactive-thread, rebase, redHandlers, redis-io, reenact, ref-fd, ref-mtl, ref-tf, reference, remote, remotion, replicant, repo-based-blog, resolve, resource-pool, resource-pool-catchio, rest-example, restricted-workers, rethinkdb-client-driver, riak, rl-satton, roguestar-engine, roguestar-gl, rolling-queue, roshask, rsagl, rsagl-frp, rss2irc, runmany, rwlock, safe-globals, salvia, salvia-demo, salvia-extras, salvia-sessions, salvia-websocket, sarsi, scalp-webhooks, scottish, scotty-session, scrz, sdl2-compositor, second-transfer, sensei, sensenet, serokell-util, servant-jquery, servant-js, servant-py, servant-subscriber, shelduck, simple-conduit, simple-pipe, skylark-client, skype4hs, snap, snap-error-collector, socket-io, socketed, soegtk, source-code-server, sousit, space, speculation, spike, spiros, split-tchan, sshtun, stack, stack-run, stackage-curator, stackage-install, stateref, steeloverseer, stm-channelize, stm-chans, stm-chunked-queues, stm-conduit, stm-delay, stm-extras, stm-firehose, stm-io-hooks, stm-lifted, stm-linkedlist, stm-orelse-io, stm-promise, stm-queue-extras, stm-sbchan, stm-split, stm-stats, stm-tlist, stmcontrol, stratum-tool, streaming-commons, streaming-concurrency, sunroof-examples, sunroof-server, sync, t3-server, taffybar, taskpool, tasty, tasty-ant-xml, tasty-fail-fast, tasty-html, tasty-rerun, tasty-silver, tasty-stats, tasty-tap, tensorflow-logging, terminal-progress-bar, testrunner, threads, threads-extras, threads-pool, threads-supervisor, threepenny-gui, time-warp, timemap, timers-updatable, tkyprof, tmapchan, tmapmvar, tomato-rubato-openal, top, toysolver, tpar, transactional-events, transformers-base, transient, transient-universe, tskiplist, tsp-viz, ttrie, turtle, tweak, tx, typed-process, typed-spreadsheet, universum, unix-process-conduit, variables, vcache, vgrep, vigilance, vision, vivid, vty, vty-ui, wahsp, wai-cli, wai-devel, wai-middleware-throttle, warp, web-plugins, webapp, webserver, websockets-rpc, websockets-simple, wild-bind-x11, wobsurv, wrecker, write-buffer-core, write-buffer-stm, wx, wxcore, xdcc, xhb, xml-push, xmobar, yampa-canvas, yeller, yesod-bin, yesod-continuations, yesod-crud, yesod-examples, yesod-fast-devel, yesod-job-queue, yet-another-logger, yi-frontend-vty, zifter, zoom-refs, zre
comments powered byDisqus