<bdo id='SUhDK'></bdo><ul id='SUhDK'></ul>
    1. <small id='SUhDK'></small><noframes id='SUhDK'>

      <tfoot id='SUhDK'></tfoot>

      <i id='SUhDK'><tr id='SUhDK'><dt id='SUhDK'><q id='SUhDK'><span id='SUhDK'><b id='SUhDK'><form id='SUhDK'><ins id='SUhDK'></ins><ul id='SUhDK'></ul><sub id='SUhDK'></sub></form><legend id='SUhDK'></legend><bdo id='SUhDK'><pre id='SUhDK'><center id='SUhDK'></center></pre></bdo></b><th id='SUhDK'></th></span></q></dt></tr></i><div id='SUhDK'><tfoot id='SUhDK'></tfoot><dl id='SUhDK'><fieldset id='SUhDK'></fieldset></dl></div>
    2. <legend id='SUhDK'><style id='SUhDK'><dir id='SUhDK'><q id='SUhDK'></q></dir></style></legend>

      1. Python 多进程分析

        时间:2023-05-26
          <bdo id='SZoGz'></bdo><ul id='SZoGz'></ul>
            <tbody id='SZoGz'></tbody>

          • <i id='SZoGz'><tr id='SZoGz'><dt id='SZoGz'><q id='SZoGz'><span id='SZoGz'><b id='SZoGz'><form id='SZoGz'><ins id='SZoGz'></ins><ul id='SZoGz'></ul><sub id='SZoGz'></sub></form><legend id='SZoGz'></legend><bdo id='SZoGz'><pre id='SZoGz'><center id='SZoGz'></center></pre></bdo></b><th id='SZoGz'></th></span></q></dt></tr></i><div id='SZoGz'><tfoot id='SZoGz'></tfoot><dl id='SZoGz'><fieldset id='SZoGz'></fieldset></dl></div>
            <legend id='SZoGz'><style id='SZoGz'><dir id='SZoGz'><q id='SZoGz'></q></dir></style></legend>

            <small id='SZoGz'></small><noframes id='SZoGz'>

                <tfoot id='SZoGz'></tfoot>
                1. 本文介绍了Python 多进程分析的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

                  问题描述

                  限时送ChatGPT账号..

                  我正在努力弄清楚如何分析一个简单的多进程 python 脚本

                  I'm struggling to figure out how to profile a simple multiprocess python script

                  import multiprocessing
                  import cProfile
                  import time
                  def worker(num):
                      time.sleep(3)
                      print 'Worker:', num
                  
                  if __name__ == '__main__':
                      for i in range(5):
                          p = multiprocessing.Process(target=worker, args=(i,))
                          cProfile.run('p.start()', 'prof%d.prof' %i)
                  

                  我正在启动 5 个进程,因此 cProfile 会生成 5 个不同的文件.在每个内部,我想看到我的方法worker"运行大约需要 3 秒,但我只看到start"方法内部发生的事情.

                  I'm starting 5 processes and therefore cProfile generates 5 different files. Inside of each I want to see that my method 'worker' takes approximately 3 seconds to run but instead I'm seeing only what's going on inside the 'start'method.

                  如果有人可以向我解释这一点,我将不胜感激.

                  I would greatly appreciate if somebody could explain this to me.

                  import multiprocessing
                  import cProfile
                  import time
                  def test(num):
                      time.sleep(3)
                      print 'Worker:', num
                  
                  def worker(num):
                      cProfile.runctx('test(num)', globals(), locals(), 'prof%d.prof' %num)
                  
                  
                  if __name__ == '__main__':
                      for i in range(5):
                          p = multiprocessing.Process(target=worker, args=(i,))
                          p.start()
                  

                  推荐答案

                  你正在分析进程启动,这就是为什么你只看到 p.start() 中发生了什么比如说,一旦子进程启动,p.start() 就会返回.您需要在 worker 方法中进行概要分析,该方法将在子进程中被调用.

                  You're profiling the process startup, which is why you're only seeing what happens in p.start() as you say—and p.start() returns once the subprocess is kicked off. You need to profile inside the worker method, which will get called in the subprocesses.

                  这篇关于Python 多进程分析的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!

                  上一篇:Python Multiprocessing.Pool 延迟迭代 下一篇:在类方法Python中调用多处理

                  相关文章

                  最新文章

                  <small id='ele9j'></small><noframes id='ele9j'>

                2. <tfoot id='ele9j'></tfoot>

                    <i id='ele9j'><tr id='ele9j'><dt id='ele9j'><q id='ele9j'><span id='ele9j'><b id='ele9j'><form id='ele9j'><ins id='ele9j'></ins><ul id='ele9j'></ul><sub id='ele9j'></sub></form><legend id='ele9j'></legend><bdo id='ele9j'><pre id='ele9j'><center id='ele9j'></center></pre></bdo></b><th id='ele9j'></th></span></q></dt></tr></i><div id='ele9j'><tfoot id='ele9j'></tfoot><dl id='ele9j'><fieldset id='ele9j'></fieldset></dl></div>
                  1. <legend id='ele9j'><style id='ele9j'><dir id='ele9j'><q id='ele9j'></q></dir></style></legend>
                      <bdo id='ele9j'></bdo><ul id='ele9j'></ul>