0
私は、オブジェクトtrm
がterminal
であり、terminal
が文字列をGUIに書き込む関数write()
を持っています。このオブジェクトをmultiprocessing.Process
のオブジェクトに渡していますが、このプロセス内で関数write()
を呼び出すと機能しません。何も起こりません。 何が起こっていますか?オブジェクトをプロセスPythonに渡す
私は、オブジェクトtrm
がterminal
であり、terminal
が文字列をGUIに書き込む関数write()
を持っています。このオブジェクトをmultiprocessing.Process
のオブジェクトに渡していますが、このプロセス内で関数write()
を呼び出すと機能しません。何も起こりません。 何が起こっていますか?オブジェクトをプロセスPythonに渡す
trm
オブジェクトをmultiprocessing.Process
のターゲットとして渡していますか?私が知っている限り、ターゲットは呼び出し可能でなければなりません。この場合、trm
ではなく、trm.write
をプロセスのターゲットとして渡す必要があります。ターゲットに引数を渡す必要がある場合は、ターゲットに渡す引数のタプルを取得するargsパラメータを渡すことができます。
コードはどこですか? '端末'とは何ですか? 'flush()'メソッドを持っていますか? 'write()'の後に呼び出してみましたか? – mhawke
@mhawke私は自分のコードを見せたいですが、残念ながらそれは大きなプロジェクトであり、コードは大きく変調されており、 "自分のコード"が効率的でないことを示すようにしています。しかし、私は 'terminal'はtkinterのGUIであると言うことができるので、マルチプロセスモジュールに関してはtinterは安全ではないかもしれません –
しかし確かに[MCVE](http://stackoverflow.com/help/) mcve)? – mhawke