Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk melaksanakan dua fungsi serentak dalam skrip Python menggunakan fungsi berulir?
Mencipta Benang dalam Python
Masalah:
Bagaimana anda boleh melaksanakan dua fungsi secara serentak dalam skrip Python menggunakan fungsi berulir dan bukannya kelas?
Skrip Berfungsi:
<code class="python">from threading import Thread class myClass(): def help(self): os.system('./ssh.py') def nope(self): a = [1,2,3,4,5,6,67,78] for i in a: print(i) sleep(1) if __name__ == "__main__": Yep = myClass() thread = Thread(target=Yep.help) thread2 = Thread(target=Yep.nope) thread.start() thread2.start() thread.join() print('Finished')</code>
Penyelesaian Diperbaiki:
<code class="python">from threading import Thread from time import sleep def threaded_function(arg): for i in range(arg): print("running") sleep(1) if __name__ == "__main__": thread = Thread(target=threaded_function, args=(10,)) thread.start() thread.join() print("thread finished...exiting")</code>
Penjelasan:
Daripada menggunakan kelas benang, skrip yang dipertingkatkan ini menunjukkan cara untuk mencipta benang secara terus dengan menghantar fungsi sasaran dan sebarang hujah yang diperlukan kepada pembina Thread. Parameter sasaran menentukan fungsi yang akan dilaksanakan dalam benang berasingan. Dalam kes ini, fungsi threaded_function() digunakan serentak dengan utas utama. Kaedah join() memastikan bahawa utas utama menunggu sehingga thread selesai sebelum meneruskan pelaksanaan.
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan dua fungsi serentak dalam skrip Python menggunakan fungsi berulir?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!