マルチプロセッシングモジュールを勉強していて、インターネットからいくつかのサンプルコードを見つけました。 コードは同じですが結果は異なります。私は鬼神のようにプロセスを設定している場合 why my subprogram doesn't work ?マルチプロセッシングモジュールを使用しているときに私のプログラムが動作しない理由
答えて
私はあなたの問題を再現することができます唯一の方法です助けてください。
p1 = Process(target=piao, args=('a',))
p2 = Process(target=piao, args=('b',))
p3 = Process(target=piao, args=('c',))
p1.daemon = True
p2.daemon = True
p3.daemon = True
p1.start()
p2.start()
p3.start()
daemon
スレッドが出るのメインプログラムをブロックせずに実行していきます。私のシステムではPython(2.X)daemon
はデフォルトでFalse
です。提供されている場合でも、3.Xドキュメント
によると、キーワードのみのデーモンの引数は、TrueまたはFalseにプロセスデーモン フラグを設定します。 None(デフォルト)の場合、このフラグは作成プロセスから継承された になります。
Windows上のPythonシェルで明示的な指定なしでdaemon
というプロセスを実行する可能性があることを意味します。
p1.daemon = False
p2.daemon = False
p3.daemon = False
start
を呼び出す前に、しかし、Pythonの3.6の場合に行う必要がありthisを参照してください(あなたがProcess
オブジェクトを呼び出すコマンドで行うことができます。このどちらかの設定をfalseにフラグを変更するには
)。
かjoin
を使用します。
p1.daemon = True
p2.daemon = True
p3.daemon = True
p1.start()
p2.start()
p3.start()
p1.join()
p2.join()
p3.join()
print "done"
ああ、意味があります。いいよ!私はそれを詳細な説明のためにupvote持っています;) – HyperNeutrino
@HyperNeutrinoありがとう! :)私はあきらめた後、それは私の心を越えた:) – atru
- 1. anglejsを使用してカスタムユニークが動作しない理由
- 2. Pythonプログラムが動作しない理由をデバッグするには?
- 3. 外部ページを使用しているときにjqueryが動作しない理由
- 4. 本当に私のプログラムが動作しない理由を理解できません
- 5. 私のインクルードのインクルードが正常に動作しない理由
- 6. 私のカルーセルが動作しない理由を理解できません(ブートストラップ)
- 7. jqueryイージングプラグインを使用して、既知の理由でナビゲーションが動作しない
- 8. Stage.closeが動作しない理由
- 9. extjsボタンハンドラが動作しない理由
- 10. setSystemCursor()が動作しない理由(libgdx)?
- 11. static ofstreamが動作しない理由
- 12. SKSpriteNode.addChild()が動作しない理由
- 13. テイクオーバーシステムが動作しない理由
- 14. WHEREがないときにIF文が動作する理由
- 15. ソートプログラムが動作していない、わからない理由
- 16. 私の角度のjsコードが動作しない理由
- 17. 何らかの理由で私のコードが動作しない
- 18. ビューを使用しているときにGoogle BigQueryが正しくパーティション日付を使用しない理由
- 19. 私のアプリがXcode 8 beta(8S128d)で動作しない理由
- 20. 私のNull代入がオートマトンで動作しない理由
- 21. 私のPHPページビュートラッカーが動作しない理由
- 22. freemarkerで私のspringbootアプリケーションが動作しない理由
- 23. コード:メッセージは、私はこれが動作しない理由を理解しようとしています
- 24. createElementNSで処理されないと動的SVGが動作しない理由
- 25. 私のCSSが影を使わない理由を理解していない
- 26. セレクタが機能しないときに型キャストが動作する理由
- 27. サブネットマスクとして192.168.1を使用できない理由
- 28. 更新/エコーいけない、これは動作しない理由を私は理解していない
- 29. std :: moveがstd :: listと一緒に動作しない理由
- 30. マウスが動作しているときにXamarinのスクロールビューをドラッグできない理由
私は最新の最新のPythonではないだから@atruは、多分それはだが、実行は私のためのプロセスを殺す前に終了するすべてのスレッドを待ちます。 ..開始メッセージの途中で終了メッセージを印刷しますが、すべての終了メッセージを待ちます – HyperNeutrino
@HyperNeutrino真、 'join()'ではありません。私は私のコメントを削除しました。プログラムは私のために働く - 終わりのメッセージが最初に印刷されている。 – atru
@atruそれはスレッドが終了して終了するのを待つだけで、最終メッセージが最後に印刷されるのを待つ 'join()'です。 – HyperNeutrino