Python 在一些情况下效率并不理想,但是 Python 这种胶水语言可以使用 C 来处理这个问题呀。

1
2
3
4
#include <stdio.h>
void helloworld() {
printf("hello world, python and c.\n");
}

首先生成一个动态库.so

生成动态库

然后在Python中这么使用:

1
2
3
4
5
6
7
from ctypes import *
from threading import Thread

# 加载动态库
lib = cdll.LoadLibrary("./libhello.so")

lib.helloworld()

输出结果:

输出

使用这种方法可以解决 Python 中的 GIL 问题。