PGF Service: limit the number of parallel calls to the C run-time parse function to 4 by default

The limit can be changed with the -j flag
This commit is contained in:
hallgren
2015-02-20 12:29:44 +00:00
parent 87c0368281
commit b72b8dcef8
3 changed files with 23 additions and 17 deletions

View File

@@ -71,11 +71,12 @@ shell opts files = loop opts =<< runSIO (importInEnv emptyGFEnv opts files)
-- | Run the GF Server (@gf -server@).
-- The 'Int' argument is the port number for the HTTP service.
mainServerGFI opts0 port files =
server port root (execute1 opts)
server jobs port root (execute1 opts)
=<< runSIO (importInEnv emptyGFEnv opts files)
where
root = flag optDocumentRoot opts
opts = beQuiet opts0
jobs = join (flag optJobs opts)
#else
mainServerGFI opts files =
error "GF has not been compiled with server mode support"

View File

@@ -56,10 +56,10 @@ import URLEncoding(decodeQuery)
debug s = logPutStrLn s
-- | Combined FastCGI and HTTP server
server port optroot execute1 state0 =
server jobs port optroot execute1 state0 =
do --stderrToFile logFile
state <- newMVar M.empty
cache <- PS.newPGFCache
cache <- PS.newPGFCache jobs
datadir <- getDataDir
let root = maybe (datadir</>"www") id optroot
-- debug $ "document root="++root