how to terminate an external program after timeout?

David Peixotto dmp at rice.edu
Thu Sep 9 11:01:11 EDT 2010


On Sep 9, 2010, at 6:37 AM, Simon Marlow wrote:

> On 09/09/2010 10:39, Christian Maeder wrote:
>> Christian Maeder schrieb:
>>> Hi,
>>> 
>>> 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.
>> 
>> C.
>> 
>>> 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:
> 
> http://darcs.haskell.org/testsuite/timeout/timeout.hs

In case it's not obvious, I believe this has to be compiled with -threaded to get the desired behavior.

-David

> 
> Cheers,
> 	Simon
> _______________________________________________
> Glasgow-haskell-users mailing list
> Glasgow-haskell-users at haskell.org
> http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
> 



More information about the Glasgow-haskell-users mailing list