Benang berjalan serentak dalam proses yang sama, berkongsi ruang memori. Global Interpreter Lock (GIL) Python mengehadkan urutan kepada satu pelaksanaan pada satu masa, menjadikannya sesuai untuk tugas terikat I/O tetapi bukan untuk yang intensif CPU.
Contoh: Program Berbenang Mudah
import threading def print_numbers(): for i in range(5): print(f"Number: {i}") # Create and start threads thread1 = threading.Thread(target=print_numbers) thread2 = threading.Thread(target=print_numbers) thread1.start() thread2.start() thread1.join() thread2.join()
Pemprosesan berbilang mencipta proses berasingan dengan ruang ingatan individu, memintas GIL. Ini adalah yang terbaik untuk tugas terikat CPU, seperti pemprosesan data atau simulasi.
Contoh: Asas Berbilang Pemprosesan
from multiprocessing import Process def print_numbers(): for i in range(5): print(f"Number: {i}") if __name__ == "__main__": process1 = Process(target=print_numbers) process2 = Process(target=print_numbers) process1.start() process2.start() process1.join() process2.join()
Dengan benang, Python berbilang tugas dalam satu proses. Dengan proses, Python mencapai keselarian sebenar merentas pelbagai teras. Bersama-sama, mereka menjadikan kod anda cekap dan berskala.
_ ? Tahniah untuk menguasai konkurensi dalam Python!_
Atas ialah kandungan terperinci Python Multithreading dan Multiprocessing. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!