スレッドを--threading Pythonの研究ノート

並行スレッドでマルチタスクへ。パフォーマンスを向上させます。例を見てみましょう。

1つの は/ usr / binに/ envをパイソン!
2  - * -コーディング:UTF-8 - * - 
3  @Date:2020年3月2日夜9時10分39秒
4  @Author:Flyinghappy([email protected]
5  @link:https://www.cnblogs.com/flyinghappy/ 
6  @Version:$イド$ 
7  インポート時間
 8  インポートがスレッド
 9つの インポート要求
 10  インポートをurllib.request
 11  DEF :runinfo(FUNC)
 12      DEFインナー(* 引数):
 13          プリント"开始访问--- ' + STR(引数[0]))
 14          START_TIME = time.time()
 15          結果= FUNC(* 引数)
 16          STOP_TIME = time.time()
 17          プリント(FUNC。__name__ + ' --- ---実行時間は:%S '%(stop_time- START_TIME))
 18          プリント' 结束访问--- ' + STR(引数[0]))
 19          リターン結果
 20      リターンインナ
 21  @runinfo
 22  デフtaskfun(URL ):
 23     HTML = urllib.request.urlopen(URL).read()
 24      戻りHTML
 25  @runinfo 
 26  DEF taskfun_outer(num_list):  
 27      URL = [
 28      ' http://www.sina.com.cn ' 29      ' のhttp: //www.cnr.cn ' 30 ' http://www.hao123.com ' 31 ' http://www.taobao.com ' 32 ' https://www.eastmoney.com ' 33     ]
 34      thread_list = []
 35                
      I における範囲(LEN(URL)):
 36          、T = threading.Thread(目標= taskfun、引数= (URL [I]))
 37          thread_list.append(T)
 38      のための項目thread_list:
 39          item.start()
 40      のための項目thread_list:
 41          item.join()
 42      
43  DEF メイン():
 44      START_TIME = time.time()
 45      num_list = [ ' taskfun_outer ' ]
 46      taskfun_outer(num_list)
 47      STOP_TIME =time.time()
 48      プリント' メイン---実行時間は:%S '%(stop_time- START_TIME))
 49  なら __name__ == ' __main__ ' 50      メイン()
コードの表示

テスト結果:ルックは、タスクが複雑である時からのアクセスには、実装の観点からの注文もできます。

 

おすすめ

転載: www.cnblogs.com/flyinghappy/p/12398255.html