首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Python中使用协程进行并行编程

在Python中使用协程进行并行编程
EN

Stack Overflow用户
提问于 2011-06-30 08:27:54
回答 2查看 1.8K关注 0票数 5

协程是简化并发编程的一个很好的范例。大多数情况下,并发任务很容易并行化。在Go语言中,使用goroutines执行并行任务是很容易的。有没有办法在Python中做同样的事情,例如使用协程来创建进程并同步它们?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-06-30 08:40:17

是的,Python在库中和通过生成器支持协程:例如,请参阅Greenlet库。此外,还有一个名为Stackless Python的派生程序,它内置了对几个并发编程特性的支持,比如微线程和通道。

请注意,在默认的CPython中,全局解释器锁一次只允许一个线程运行,这可能是一个问题。

票数 3
EN

Stack Overflow用户

发布于 2011-06-30 17:31:25

如果你想使用标准的python解释器,greenlet库是个不错的选择。

至于GIL,这对于协程来说应该不是问题。您可以将greenlet协程模型视为在一个内核线程内运行的多个轻量级用户空间“线程”。所以从GIL和OS的角度来看,它仍然是单线程的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6528789

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档