有很多与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非常适合实现映射/归约算法,根据输入数据,您可以拥有大量的化简器。
关于python - 我将Stackless Python用于什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2220645/