我使用多处理的过程中python2.7创建太过程,如下图所示:约多处理过程
p1 = Process(target=build_sql_s, args=(Scopes,))
p2 = Process(target=build_sql_o, args=(Orders,))
p1.start()
p2.start()
p1.join()
p2.join()
Scopes
和Orders
两种list var
,build_sql_s
和build_sql_o
是functions
。 当我运行这个程序,cpu
为p1
是70%
,但CPU和内存p2
是0%
直到p1
的工作是在一台计算机与8 core
... 为什么做所有的时间?不应该多处理的过程使用计算机的不同核心吗?
我没跟着你〜你能更清楚地解释一下吗? –
您的清单“订单”有多久可能是工作很快完成。通常Process应该使用另一个核心。但是你应该给我们更多关于你的代码的细节:你的代码是否在if __main__? – Alexis
是的,它是在一个主要的。 Scopes的规模是几十万,Orders的规模几乎是四百万。有没有可能关于Scopes的工作很快完成?但它仍然在顶层命令的进程列表中。 –