我们在一个长期的Python过程中使用gevent,随着时间的推移,我们产生了成千上万的Greenlet。
我们不会加入任何一个绿色环保组织,我们只是生生不息。( Greenlet任务本身是短暂的,而且确实退出。)这样行吗?,我们不加入绿色环保组织是在泄露资源吗?
发布于 2015-06-25 21:16:51
您并没有泄漏资源,因为当绿包死亡时,所有使用过的内存都将被正确清除(垃圾回收也是自动的)。所以我不会担心这个。
当然,您对体系结构的描述并不能使其显得非常健壮。因此,虽然您没有泄漏内存本身,如果您真的启动了太多的小片,您可能会发现您的主游标很少执行。换句话说,每当它屈服于集线器(通过睡眠或任何其他阻塞调用),您可能会发现,在您的主绿地恢复活力之前,将调用和执行数千个游标。
还要注意在集线器和绿网之间来回切换的开销。
发布于 2015-03-19 01:54:49
我没有和gevent合作过,所以把这个拿去吧。对于一般的线程处理,对join的所有调用都是阻塞的,直到线程完成或结束,这就是gevent文档中提到的所有内容。它通常只用于同步线程,而不是用于清理,所以您应该可以。
https://stackoverflow.com/questions/29135426
复制相似问题