スレッドクラスを作成しますthreading.py

インポートスレッディング
時間インポート眠りから、ctimeの
#创建线程类:
クラスMyThread(threading.Thread):
デフ__init __(自己、FUNC、引数、名前= ""):
threading.Thread .__のinit __(自己)
self.func = FUNC
自己.args =引数
self.name =名前

defを実行します(自己):
self.func(* self.args)

デフ(_ファイルタイプ、時間を)super_play:
私の範囲内(2)用
のプリント(「スタート演奏:!%sは% S」%(_ファイルタイプ、CTIME()))
睡眠(時間)

のリスト= { "爱情买卖.MP3":3 "阿凡达のMP4":5、 "我和你.MP3":4}

スレッド= []
ファイル=範囲(LEN(リスト))

_ファイルタイプのために、lists.itemsの時間():
T = MyThread(super_play、(_ファイルタイプ、時間)、super_play。__名前__)
threads.append(t)は

__name__ == '__main__' IF:
:#はプロセスを開始
:ファイルでのiについて
スレッド[i]を.start()
ファイルでのiについて:
スレッド[i]の.join()
印刷(「エンド:% S「%のctime())

」「」
継承クラスthreading.ThreadことMyThreadクラスを作成します。
__init__クラスFUNC、引数、名前やその他のパラメータが初期化されているため初期化子。
Python2で、アプライ(FUNC [、引数[ 、kwargsから]])関数を返す関数のパラメータが既にタプルまたは辞書に存在する場合、間接的関数.argsを呼び出すapply0は、省略された場合関数に提供される位置によって渡される引数のタプルであります引数は、任意のパラメータが渡されることはありません、kwargsからキーワード引数を含む辞書です。
Pythonの3がもはや適用されます()関数をサポートしている、
それは(self.func、self.args)が適用されません
ように修正
(self.func * self.args)
最後に、作成し、スレッドを開始する前の例と同じことが、唯一の違いはスレッドの形で上院にMyThreadクラスは、変更されたことをスレッドを作成することです。
「」"

おすすめ

転載: www.cnblogs.com/zhang-da/p/12210542.html