gpt4 book ai didi

python - Eventlet vs Greenlet vs gevent?

转载 作者:太空狗 更新时间:2023-10-29 17:31:30 26 4
gpt4 key购买 nike

我正在尝试创建一个具有事件循环的 GUI 框架。一些线程处理 UI,一些线程处理事件。我搜索了一下,找到了这三个库,我想知道哪个更好用?有什么优点和缺点?

我可以使用这三个库中的一个,甚至可以使用 python threadsconcurrent 库为自己创建一些东西。

我很乐意分享任何类型的经验、基准和比较。

最佳答案

  • 您绝对不需要为此目的使用 greenlet,因为它是一个低级库,您可以在其上创建轻线程库(如 Eventlet 和 Gevent)。
  • Eventlet、Gevent 和更多类似的库为 IO 绑定(bind)任务(等待文件、网络上的读/写)提供了出色的工具集。
  • 很可能,您的大部分 GUI 代码将等待其他线程(此时绿色/浅色/OS 线程无关紧要)完成,这是上述库的完美目标。
  • 所有的绿色线程库都大同小异。尝试所有并决定哪一个最适合您的项目。
  • 但由于操作系统级 GUI 层的要求,您也可能需要将一些内容提取到单独的操作系统线程中。
  • 考虑到这一点以及在 Python3 中更好地实现线程锁,如果您的应用程序不需要数百个或更多线程,您可能只想坚持使用原生 threading 模块。

关于python - Eventlet vs Greenlet vs gevent?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36834234/

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