5

也许我遗漏了一些明显的东西(现在是星期五),但有没有办法os.fork()在绿叶上做相当于一个?我不一定要分叉该过程,我希望采用 greenlet 并运行一组代码,然后运行另一组代码,但具有独立的范围(如os.fork())。

有什么想法还是我应该睡一觉?

4

1 回答 1

4

为了从概念上分叉一个greenlet,只需创建另一个包装您的“子函数”的greenlet。我也强烈推荐gevent,它建立在 greenlet 之上。gevent 代码有一个 fork() 方法,但它分叉 Python 进程,然后在子进程中重新启动 gevent。我敢打赌,您可以使用比 greenlet 更具可读性的代码来实现您在 gevent 中所做的任何事情。

于 2011-02-26T00:04:47.873 回答