首頁  >  文章  >  後端開發  >  如何使用函數在 Python 中創建線程而不需要子類化 Thread?

如何使用函數在 Python 中創建線程而不需要子類化 Thread?

Barbara Streisand
Barbara Streisand原創
2024-10-25 07:05:29658瀏覽

How can I create threads in Python using functions without subclassing Thread?

使用函數在Python 中創建線程

問題:

同時運行兩個函數Python 腳本,您無法使用提供的範例程式碼實作執行緒。您喜歡使用線程函數而不是基於類別的方法。

解決方案:

您可以在 Python 中使用線程函數建立線程,而不是使用 Thread 的子類別。以下是一個範例:

<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>

解釋:

  • threaded_function 是使用參數arg 定義的,其中,您可以執行任何您想要的操作。
  • 在主執行緒中,建立 Thread 類別的實例,以 threaded_function 為目標,並以參數元組作為 args 參數。
  • 在執行緒物件上呼叫 start()開始執行。
  • join() 用於等待執行緒完成執行後再繼續。

以上是如何使用函數在 Python 中創建線程而不需要子類化 Thread?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn