Log: savedState.bin: openFile: resource busy (file is locked)
this does not occur if the program wasnt loaded. My best guess here
is that B.readFile isnt completing and closing the file for some
reason. Is there a good way to force this?
Lazy IO. So force the result to be evaluated, and then close the handle,
or use strict bytestring reading.
There is no visible handle. It's all hidden in readFile.
I will try forcing the data.
I tried to force the data with:
loadState db = do
d <- decode <$> B.readFile stateFile
let force = sum $ M.elems $ M.size `fmap` d
force `seq` atomically $ writeTVar db d
and I get the same error when trying to writeFile after doing
a loadState.
-- Don
Tim Newsham
http://www.thenewsh.com/~newsham/
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe