From b061d59044b0cc689cf270617364ab36c8a0792f Mon Sep 17 00:00:00 2001 From: hallgren Date: Wed, 19 Mar 2014 16:15:05 +0000 Subject: gf -server: add a command to manually flush the PGF cache This can be used if the cloud service seems slow, but it would probably be better to automatically expire unused PGFs from the cache after some time. --- src/server/Cache.hs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/server/Cache.hs') diff --git a/src/server/Cache.hs b/src/server/Cache.hs index d704fe495..8cb9135e2 100644 --- a/src/server/Cache.hs +++ b/src/server/Cache.hs @@ -1,4 +1,4 @@ -module Cache (Cache,newCache,readCache) where +module Cache (Cache,newCache,flushCache,readCache) where import Control.Concurrent.MVar import Data.Map (Map) @@ -17,6 +17,9 @@ newCache load = do objs <- newMVar Map.empty return $ Cache { cacheLoad = load, cacheObjects = objs } +flushCache :: Cache a -> IO () +flushCache c = modifyMVar_ (cacheObjects c) (const (return Map.empty)) + readCache :: Cache a -> FilePath -> IO a readCache c file = do v <- modifyMVar (cacheObjects c) findEntry -- cgit v1.2.3