Pythonのthreading
モジュールを使用して、スレッドに引数を渡す方法を解説します。スレッドに引数を渡すことで、同じ関数に異なる引数を渡して、処理を並列で動かすことが可能になります。
スレッドに引数を渡す基本的な方法
スレッドに引数を渡すには、args
オプションを使用します。args
オプションにはタプルを設定し、タプルには渡したい引数の数だけ値を設定できます。
import threading
def func(arg1, arg2):
# スレッドで実行したい処理を書く
thread = threading.Thread(target=func, args=(arg1, arg2))
thread.start()
この例では、func
という関数にarg1
とarg2
という2つの引数を渡しています。
引数が1つの場合の注意点
引数が1つしかない場合は、引数の後ろに,
(カンマ)を付けることを忘れないでください。これは、Pythonのタプルの構文規則によるものです。
import threading
def func(arg):
# スレッドで実行したい処理を書く
thread = threading.Thread(target=func, args=(arg,))
thread.start()
この例では、func
という関数にarg
という1つの引数を渡しています。
まとめ
Pythonのthreading
モジュールを使用すると、スレッドに引数を渡すことが可能になり、同じ関数に異なる引数を渡して、処理を並列で動かすことができます。引数が1つしかない場合は、引数の後ろに,
(カンマ)を付けることを忘れないでください。