相关疑难解决方法(0)

276
推荐指数
9
解决办法
16万
查看次数

Python中的绿色线程和线程

正如维基百科所述:

绿色线程模拟多线程环境而不依赖于任何本机操作系统功能,它们在用户空间而不是内核空间中进行管理,使它们能够在没有本机线程支持的环境中工作.

Python的线程实现为pthreads (kernel threads),并且由于全局解释器锁(GIL),Python进程一次只运行一个线程.

[ 问题 ]但在Green-threads(或所谓的greenlet或tasklets)的情况下,

  1. GIL会影响他们吗?一次可以运行多个greenlet吗?
  2. 使用greenlets或tasklet的缺陷是什么?
  3. 如果我使用greenlet,进程可以处理多少个?(我想知道,因为在一个进程中你可以打开你的*ix系统中设置的ulimit(-s,-v)线程 .)

我需要一点见解,如果有人可以分享他们的经验,或者引导我走上正确的道路,那将会有所帮助.

python multithreading pthreads gil green-threads

40
推荐指数
2
解决办法
2万
查看次数