2016-06-30 8 views
0

dispyの依存関数を介して送信されるpythonモジュールのパッケージ名を保持する方法はありますか? これは、dispyコンテキストの有無にかかわらず呼び出されたときと同じ方法でパッケージ/モジュールを使用できるようにします。Python dispy - 依存関係のパッケージ名を保持する

簡単な例:

モジュールmypackage.dispytestDepends:

def myFun(): 
    return "Foo" 
私はそれを持っているしたいと思います(動作しない)として

メインモジュール:

def dependsFunTask(): #works only when called without dispy 
    import mypackage.dispytestDepends 
    ret = mypackage.dispytestDepends.myFun() 
    return ret 

import dispy 
if __name__ == '__main__': 
    cluster = dispy.JobCluster(dependsFunTask,depends = mypackage.dispytestDepends) # doesn't work 
    job = cluster.submit() 
    output = job() 
    print output ### output is None 
    mypackage.dependsFunTask() # works 

働く、まだ私はたくさんのコードを書き直さなければならないので、醜いバージョンです:

def dependsFunTask(): #only works when called through dispy 
    import dispytestDepends 
    ret = dispytestDepends.myFun() 
    return ret 

import dispy 

if __name__ == '__main__': 
    cluster = dispy.JobCluster(dependsFunTask,depends = mypackage.dispytestDepends) # works 
    job = cluster.submit() 
    output = job() 
    print output ### output is "Foo" 
    dependsFunTask() # doesn't work 

答えて

関連する問題