Make updates to the Finder caches atomic. Well, almost.
authorThomas Schilling <nominolo@googlemail.com>
Sun, 16 Aug 2009 23:19:20 +0000 (23:19 +0000)
committerThomas Schilling <nominolo@googlemail.com>
Sun, 16 Aug 2009 23:19:20 +0000 (23:19 +0000)
commitf391c6e6b04055eac8bc878af31042e103387530
tree48ec5216f8df6a0c9f9a97cd99c1f6152ce4c908
parentca8d50e001ffa64cefac0231f1cdbdff19b47e8c
Make updates to the Finder caches atomic.  Well, almost.

Flushing and uncaching a single module is not completely atomic since
both caches a cleared separately.  However, flushing is only done when
changing the working directory which shouldn't be done concurrently to
other threads.  Uncaching is only done in 'summariseModule' which
requires some more work to become thread-safe anyway.
compiler/main/Finder.lhs
compiler/main/GHC.hs