一组基本的无堆叠实用程序
stacklesslib的Python项目详细描述
无堆栈python本身只提供一组基本的功能, 允许微线程的协作或抢占式调度 在同一个操作系统线程内。此框架提供 任何使用stackless开发应用程序的人 python最终将实现。
最有用的方面是猴子补丁支持。大部分 标准库中的代码执行阻塞操作,或者 甚至是为了利用线程而编写的。如果猴子修补是 安装,然后将这些阻塞操作转换为 “无堆叠友好”。线程实际上是微线程。操作 阻止操作系统线程(因此 将被转换为只阻止 代替那些本来要用的线。
即使应用程序开发人员不希望使用 猴子补丁,他们仍然可以利用提供的框架 所以他们不需要执行标准支持 功能本身。
有用的支持功能:
- 与并发相关的原语,与标准库线程模块为实际线程提供的原语相对应。
- 使微线程睡眠一定时间的能力。
- 能够指定阻塞操作的超时。
- 无堆栈兼容套接字库。