use lock pools throughout git-annex
The one exception is in Utility.Daemon. As long as a process only daemonizes once, which seems reasonable, and as long as it avoids calling checkDaemon once it's already running as a daemon, the fcntl locking gotchas won't be a problem there. Annex.LockFile has it's own separate lock pool layer, which has been renamed to LockCache. This is a persistent cache of locks that persist until closed. This is not quite done; lockContent stil needs to be converted.
This commit is contained in:
parent
6915b71c57
commit
ecb0d5c087
13 changed files with 45 additions and 44 deletions
16
Types/LockCache.hs
Normal file
16
Types/LockCache.hs
Normal file
|
@ -0,0 +1,16 @@
|
|||
{- git-annex lock cache data types
|
||||
-
|
||||
- Copyright 2014 Joey Hess <id@joeyh.name>
|
||||
-
|
||||
- Licensed under the GNU GPL version 3 or higher.
|
||||
-}
|
||||
|
||||
module Types.LockCache (
|
||||
LockCache,
|
||||
LockHandle
|
||||
) where
|
||||
|
||||
import qualified Data.Map as M
|
||||
import Utility.LockPool
|
||||
|
||||
type LockCache = M.Map FilePath LockHandle
|
Loading…
Add table
Add a link
Reference in a new issue