import multiprocessing as mlp
class Test(mlp.Process):
def run(self):
if self.name == "Test-2":
import time
time.sleep(4)
print self.name
jobs = []
for i in range(5):
m = Test()
jobs.append(m)
m.run()
for i in jobs:
i.join()
上記のコードでは、出力は常に次のようになります。 Test-1 Test-2 Test-3 Test-4 Test-5
そして、これらのプロセスは次々と生成されます。Test-3 と同様に、Test-2 が完了した後にのみスパンします。それらは並行して発生するべきではありませんか???
また、 i.join() はエラーをスローします: AssertionError: can only join a started process
私は何が悪いのですか?
ありがとう...