BSD-3-Clause licensed by Ryan Newton
Maintained by [email protected]
This version can be pinned in stack with:thread-local-storage-0.2@sha256:5a9f85d1b01bdd4fac00fa82bccee4889b50c2a62cade21a00931b91215506a8,2746

Module documentation for 0.2

  • Data
    • Data.TLS
      • Data.TLS.GHC
      • Data.TLS.PThread
        • Data.TLS.PThread.Internal
Depends on 2 packages(full list with versions):

thread-local-storage

Hackage Hackage Dependencies Haskell Programming Language BSD3 License Build

See .cabal file for description.

Here are some example benchmark results (on an Ivy Bridge i7-3770), with a typical time of 10.4 nanoseconds to get to a TLS variable given one IO thread per OS thread:

example benchmarks

Changes

0.2 [2018.07.01]

  • thread-local-storage now checks that threads calling Data.TLS.PThread.getTLS are bound threads, and throws a runtime error if this is not the case.

    For this reason, if you call getTLS in a thread spawned by forkOn, it will break with this release, so you are encouraged to switch uses of forkOn to forkOS.

0.1.2 [2017.06.23]

  • Fix the benchmark suite with criterion-1.2

0.1.1 [2017.01.22]

  • Expose Data.TLS.PThread.Internal. Note that there are no API guarantees whatsoever with this module, so use it with caution.
  • Add pthread to extra-libraries. Without it, some systems suffer from linker errors when using this library.
  • Fix build on GHC 7.6 and 7.8.