python 中的线程调度程序

Thread scheduler in python

我正在尝试重写 Python 中的一些 C OMP 程序以用于演示目的。但是,我无法翻译可以在 C 中找到的循环调度程序(下面的示例)

pragma omp parallel for schedule(static)
for(i=0; i<10; i++)
    printf("\n Process = %d, i = %d", omp_get_thread_num(),i);

具体来说,我需要演示动态调度程序和静态调度程序之间的区别。

Python中有线程调度器这样的东西吗?

标准库中有一个动态线程调度程序 - concurrent.futures.thread.ThreadPoolExecutor。我不认为 Python 可以进行静态编译时调度。 Python 在编译时做的很少,如果你甚至可以说编译时主要是解释的语言。

由于 GIL(全局解释器锁),静态调度也没什么意义。

理论上,这可以通过公开绑定到某些 C 库或使用 Python 而非 CPython 的其他风格来完成,但 imo Python 并不是为这种类型而设计的的东西:P。请参阅 this 答案。