哪里可以找到释放GIL的numpy函数列表?

13 投票
1 回答
2431 浏览
提问于 2025-04-18 08:27

我发现有很多人在StackOverflow上问这个问题,虽然问法不一样,但都没有给出一个具体的列表或者提到过这样的列表。

这个问题提到了一个维基页面,不过虽然那个页面讨论了全局解释器锁(GIL)和多线程的内容,却没有列出哪些函数可以释放GIL。

这篇邮件列表的帖子提到,想要知道这些函数,唯一的方法就是去看numpy的源代码。真的如此吗?

1 个回答

3

虽然不能保证能找到所有的东西,但我刚刚在我的numpy代码库的复制版本中运行了:

git grep nogil

结果在两个文件中找到了82个使用的地方:

  • random/mtrand/mtrand.pyx
  • random/mtrand/numpy.pxd

撰写回答