how to terminate an external program after timeout?
Christian.Maeder at dfki.de
Thu Sep 9 12:18:59 EDT 2010
David Peixotto schrieb:
> On Sep 9, 2010, at 6:37 AM, Simon Marlow wrote:
>> On 09/09/2010 10:39, Christian Maeder wrote:
>>> Christian Maeder schrieb:
>>>> we call from our haskell application the metis prover via
>>>> System.Process.readProcessWithExitCode "metis" filename ""
>>>> However, we are not able to get rid of this process if metis does not
>>>> terminate by itself. In particular, wrapping this call into a
>>>> System.Timeout.timeout does not work.
>>> timeout works so far as it is possible to start another action, but the
>>> continuing metis process still blocks the whole system.
>>>> Any suggestions how we should handle this ideally portably but first of
>>>> all under unix. (ghc-6.12.3)
>> Take a look at the timeout program in GHC's test suite:
This looks pretty complicated. Did no one else needed this? Isn't it
easier to put the application into a wrapper script and call the script
> In case it's not obvious, I believe this has to be compiled with -threaded to get the desired behavior.
Yes, we do use -threaded.
More information about the Glasgow-haskell-users