我有类似以下内容:
d = {...} #a dictionary with strings
l1 = [...] #a list with stuff
l2 = [...] #a list with numbers
...
for i in l1:
for key in l2:
#do some stuff
...
if d[key] == i:
print d[key]
我想使用线程做同样的事情(以提高性能)。我在想类似的东西:
import threading
d = {...} #a dictionary with strings
l1 = [...] #a list with stuff
l2 = [...] #a list with numbers
...
def test(i, key):
#do the same stuff
if d[key] == i:
print d[j]
for i in l1:
for key in l2:
threading.start_new_thread(test, (i,key))
我不确定这是否是最好的方法。我最担心的是我根本没有优化。一些基本思想是:
d应该在共享内存中(可以被所有线程访问)。我假设没有线程会访问相同的条目。
每个(i,键)组合都应同时进行测试。
如果您认为我应该使用另一种语言,那么如果您能指出它将会很高兴。帮助将不胜感激。提前致谢。
白衣非少年
相关分类