Python多线程效率不高

Python多线程效率不高,python,multithreading,python-multiprocessing,python-multithreading,Python,Multithreading,Python Multiprocessing,Python Multithreading,我试图比较许多处理器和许多编程语言的速度,但python中的多线程有一个问题: def main(argv): start_time = time.time() case_number = 2 nb_thread = 2 t = [0] * nb_thread for i in range(0, nb_thread): t[i] = Thread(target=resolve, args=("TREAD " +

我试图比较许多处理器和许多编程语言的速度,但python中的多线程有一个问题:

    def main(argv):
    start_time = time.time()

    case_number = 2
    nb_thread = 2
    t = [0] * nb_thread
    for i in range(0, nb_thread):
        t[i] = Thread(target=resolve, args=("TREAD " + str(i),)) // resolve is a mathematic problem (about 6 seconds to resolve it)
        t[i].start()

    t[0].join()
    t[1].join()
    print("--- %s seconds ---" % (time.time() - start_time))


if __name__ == '__main__':
    main(sys.argv)
使用1个线程和1个解析()=>6秒,使用2个线程和2个解析()=>12秒

使用resolve()中的print(),您在这里看不到,我读到:

D:\Dev\python\Sudoku>python main.py txt.txt
TREAD 0   <<BEGUIN>>
TREAD 1   <<BEGUIN>>
TREAD 0   <<END>>
TREAD 1   <<END>>
--- 12.335727453231812 seconds ---
D:\Dev\python\Sudoku>python main.py txt.txt
踏面0
踏面1
踏面0
踏面1
---12.3357274533812秒---
似乎有件事我不明白:/
谢谢大家!

realpython.com/python-gil

很有趣,谢谢