在Python中,可以使用多線程或多進程來實現并行運行。
threading
模塊可以創建多個線程,每個線程可以獨立執行任務。在Python中,由于全局解釋器鎖(GIL)的存在,多線程并不能實現真正的并行運行,但是對于IO密集型任務,多線程可以提升程序的性能。import threading
def task():
# 執行任務的代碼
threads = []
for _ in range(10):
t = threading.Thread(target=task)
t.start()
threads.append(t)
for t in threads:
t.join()
multiprocessing
模塊可以創建多個進程,每個進程可以獨立執行任務。不同于多線程,多進程可以實現真正的并行運行,適用于CPU密集型任務。import multiprocessing
def task():
# 執行任務的代碼
processes = []
for _ in range(10):
p = multiprocessing.Process(target=task)
p.start()
processes.append(p)
for p in processes:
p.join()
需要注意的是,在使用多線程或多進程時,要注意資源的共享和同步問題,避免出現競態條件(Race Condition)和死鎖(Deadlock)等問題。