1
0
forked from GitHub/gf-core

pgf-shell: enable -rtsopts, call performGC between commands

This is to make it easier to find the cause of space leaks.
This commit is contained in:
hallgren
2014-02-07 13:57:13 +00:00
parent ed45089b83
commit d1ab3072db
3 changed files with 7 additions and 1 deletions

View File

@@ -255,6 +255,8 @@ executable pgf-shell
hs-source-dirs: src/runtime/haskell-bind/examples
build-depends: gf, base
default-language: Haskell2010
if impl(ghc>=7.0)
ghc-options: -rtsopts
test-suite rgl-tests
type: exitcode-stdio-1.0

View File

@@ -14,6 +14,7 @@ import System.IO.Error(catchIOError)
import System.Environment
import CRuntimeFFI
import CId
import System.Mem(performGC)
main = getPGF =<< getArgs
@@ -21,7 +22,8 @@ getPGF [path] = pgfShell =<< readPGF path
getPGF _ = putStrLn "Usage: pgf-shell <path to pgf>"
pgfShell pgf =
forever $ do putStr "> "; hFlush stdout
forever $ do performGC
putStr "> "; hFlush stdout
execute pgf =<< readLn
execute pgf cmd =

View File

@@ -31,3 +31,5 @@ executable pgf-shell
hs-source-dirs: examples
build-depends: base, haskell-bind
default-language: Haskell2010
if impl(ghc>=7.0)
ghc-options: -rtsopts