【发布时间】:2021-06-17 14:47:52
【问题描述】:
我正在使用 Python3 开发一个多线程应用程序。 我想为后端服务器一次运行超过 100k 个线程,但线程最多创建 10k 个。 我认为我的服务器 pc 有足够的资源用于很多线程。(cpu,ram)。 Python3多线程如何增加线程数?
for i in range(0, 1000000):
t = i.Thread(target=func, args=(i))
t_list.append(t)
for t in t_list:
t.start()
【问题讨论】:
-
你的服务器电脑上是否有线程限制的设置?
-
@rhavelka,当然。 echo 1000000 > /proc/sys/kernel/threads-max, ulimit -s 256, ulimit -i 1000000.
-
出于好奇,这些线程分别代表什么?通常,明智的做法是将线程(即可以工作的事物)与任务(需要完成的工作单元)分离。您最终可能会编写更多代码,但取决于任务状态对象的大小,您最终可能会节省 大量 内存。
标签: python multithreading