Python并不支持真正意义上的多线程,Python中有一个被称为Global Interpreter Lock(GIL)的东西,它会确保任何时候你的多个线程中,只有一个被执行。但是因为线程的执行速度非常快所以会让我们错认为是多线程是并行执行的,但是实际上都是轮流执行的。经过GIL处理会增加执行的开销。这意味着,如果你想提高代码的运行速度使用threading不是一个很好的方法。
那么为了提高运行效率我们应该怎么做,1.使用多进程来代替多线程进行使用;2.通过调用Python代码的外部程序;3.python代码调用其他的代码(在python中调用C函数,用C++来进行设计)