Python33 - 在多个线程/进程中运行一个函数来加速它

时间:2013-08-23 17:33:51

标签: python multithreading performance list multiprocessing

我正在使用while True循环在每个循环中向列表添加内容,并且每次迭代时我都会计算整个列表的内容。我将新事物添加到列表中的因子为1.1x,因此如果列表在开始时长度为10,则在第一次迭代后将为11。

计算部分基本上是一个if-else迷宫,数字将通过,列表中其他数字的内容将会改变,新的数字将被添加。没有很多函数调用,我尝试将所有代码放在同一个函数中。

这是核心代码:

...variables to record data
a_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
while True:
    for item in a_list:
        ...calculate things
        ...compare things
        ...add new things to list
        ...store data in another list/file

使此功能运行得更快的最佳方法是什么?

TLDR:我有一个功能,我想在多个线程/进程中运行它来加快速度。

编辑:

我还要注意,当长度达到100,000时,我想到将列表分成两个/四个,并在它自己的线程中迭代这些列表。我不知道如何实现这一点。

EDIT2:

我现在在后台运行这个程序,它已经运行了大约三个小时,它在迭代131上,列表长度为400,000。

0 个答案:

没有答案