2011-06-24 5 views
0

に可能性の重複をぶら下げ機能を殺す:
Python kill hanging functionPythonは

私は、これは前に頼まれていると確信しているが、私は同様の例を見つけることができません。私は実行時間制限付きの関数を呼び出すことができる必要があります。関数がこの時間を引き継ぐと、スクリプト全体が終了します。

これは、スクリプト全体のタイミングをとることによって行うことはできません!そして私はただ一つの小さな機能をタイムアウトさせたいだけです。出来ますか?例えば

def sleep(): 
     time.sleep(60) 

time("sleep()", limit=30, violation="sys.exit(1)") 

非常に基本的で恐ろしい探したとえば私が知っているが、それは説明を助けるかもしれません。

+0

ない良い方法をしますが、デーモンスレッドで関数を実行し、いくつかのタイムアウト後にスクリプトを終了することができます。 – khachik

+0

私はアラームhttp://docs.python.org/library/signal.htmlを使用してこれを行いました – jdborg

答えて