作者热门文章
- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
有很多与 Stackless Python 相关的问题。但是没有人回答我的问题,我想(如果错了请纠正我 - 请!)。一直有一些关于它的嗡嗡声,所以我很想知道。我会用 Stackless 做什么?它比 CPython 好在哪里?
是的,它有绿色线程(无堆栈),只要没有操作阻塞(类似于 Ruby 的线程?),就可以快速创建许多轻量级线程。这有什么好处?我想通过 CPython 使用它还有哪些其他功能?
最佳答案
它允许您处理大量并发。没有理智的人会创建十万个系统线程,但您可以使用无堆栈来做到这一点。
本文测试了这样做,用 Python 和 Google Go(一种新的编程语言)创建了十万个 tasklet:http://dalkescientific.com/writings/diary/archive/2009/11/15/100000_tasklets.html
令人惊讶的是,即使 Google Go 被编译为 native 代码,并且他们吹捧他们的协同例程实现,Python 仍然获胜。
Stackless 非常适合实现 map/reduce 算法,根据您的输入数据,您可以拥有大量的 reducer。
关于python - 我会用 Stackless Python 做什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2220645/
我是一名优秀的程序员,十分优秀!