Multithreading dalam Python: Contoh Langkah demi Langkah
Untuk memperuntukkan tugas merentasi berbilang thread dalam Python, modul threading menyediakan keupayaan berkuasa . Contoh ini menunjukkan cara membahagikan tugas dengan cekap:
Berbilang benang dengan peta dan kumpulan
Versi Python Moden (diperkenalkan selepas 2010) menawarkan pendekatan berbilang benang yang dipermudah menggunakan peta dan kumpulan. Contohnya, untuk menggunakan fungsi my_function pada setiap elemen dalam tatasusunan my_array secara selari, gunakan kod berikut:
from multiprocessing.dummy import Pool as ThreadPool pool = ThreadPool(4) results = pool.map(my_function, my_array)
Konsep Teras:
Fungsi Peta:
Thread Pool:
Penerangan:
Pelaksanaan berbilang benang ini memanfaatkan keupayaan peta yang cekap untuk menggunakan fungsi pada setiap elemen serentak. Dengan mencipta himpunan benang, ia mengagihkan tugas antara berbilang benang, mengurangkan masa pelaksanaan dengan ketara untuk operasi yang tidak terikat I/O.
Pemprosesan Berbilang lwn. Pemprosesan Berbilang:
Perhatikan bahawa untuk tugas intensif CPU, menggunakan berbilang pemprosesan dengan berbilang proses adalah lebih sesuai, manakala berbilang benang dengan benang adalah lebih baik untuk tugasan berkaitan I/O.
Atas ialah kandungan terperinci Bagaimanakah Modul `threading` Python dan `ThreadPool` Dapat Meningkatkan Kecekapan Tugas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!