gpt4 book ai didi

python - python 中应该如何生成线程

转载 作者:太空宇宙 更新时间:2023-11-03 16:57:08 25 4
gpt4 key购买 nike

我正在具有 python2.7.6 的服务器中运行 python 程序。我使用了Python的threading模块来创建多个线程。我创建了 23 个线程,所以我很困惑我的所有处理器核心是否实际上都在使用,有什么方法可以在我的服务器中检查这一点。为了提高程序效率,有什么建议可以根据我们拥有的处理器数量生成理想的线程数。

最佳答案

David Beazly 有 a great talk on threading在Python中。他还就该主题做了精彩的演讲 here .

不幸的是,Python 有一个叫做 GIL 的东西,它限制 Python 一次执行一个线程。要使用所有核心,您必须使用多个进程:See Multiprocessing .

Python 社区中的一些人并不一定将 GIL 视为一种挫折,您可以通过共享内存线程之外的其他方式来利用多个内核。

在这里查找 great blog post on utilizing multiple cores in Python.

编辑:对于 CPython(最常见也是 Python 的引用实现)来说也是如此。有几个"yes but"答案在那里(主要指不同Python实现上的多线程),但我通常会指出人们answers like this one描述了 CPython 中的 GIL 以及利用多核的替代方案 6

关于python - python 中应该如何生成线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35330685/

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