gpt4 book ai didi

Python:确定要创建的线程数

转载 作者:行者123 更新时间:2023-11-28 22:50:28 28 4
gpt4 key购买 nike

IOError: [Errno socket error] [Errno 10055] 由于系统缺少足够的缓冲区空间或队列已满,无法执行对套接字的操作

如何确定我应该创建的线程实例数以防止我的程序遇到上述错误?

def do_work(sym):
if quote.get_price(i) != '0.00':
print '%s: %s' % (i, squote.get_price(i))

for i in perm:
t = Thread(target=do_work, args=(i,))
t.start()

注意:
1. len(perm) 约为27000
2. quote.get_price() 做类似的事情:

return urllib.urlopen(url).read().strip().strip('"')

最佳答案

使用线程池而不是创建 27,000 个线程。

import multiprocessing.pool

def do_work(sym):
if quote.get_price(sym) != '0.00':
print '%s: %s' % (sym, squote.get_price(sym))

if __name__ == '__main__':
number_of_threads = 4
pool = multiprocessing.pool.ThreadPool(number_of_threads)
pool.map(do_work, perm)

关于Python:确定要创建的线程数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22581591/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com