日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

python中threading和queue庫實現多線程編程

瀏覽:201日期:2022-06-28 11:01:13
摘要

本文主要介紹了利用python的 threading和queue庫實現多線程編程,并封裝為一個類,方便讀者嵌入自己的業務邏輯。最后以機器學習的一個超參數選擇為例進行演示。

多線程實現邏輯封裝

實例化該類后,在.object_func函數中加入自己的業務邏輯,再調用.run方法即可。

# -*- coding: utf-8 -*-# @Time : 2021/2/4 14:36# @Author : CyrusMay WJ# @FileName: run.py# @Software: PyCharm# @Blog :https://blog.csdn.net/Cyrus_Mayimport queueimport threadingclass CyrusThread(object): def __init__(self,num_thread = 10,logger=None): ''':param num_thread: 線程數 :param logger: 日志對象 ''' self.num_thread = num_thread self.logger = logger def object_func(self,args_queue,max_q): while 1: try:arg = args_queue.get_nowait()step = args_queue.qsize()self.logger.info('progress:{}{}'.format(max_q,step)) except:self.logger.info('no more arg for args_queue!')break'''此處加入自己的業務邏輯代碼''' def run(self,args): args_queue = queue.Queue() for value in args: args_queue.put(value) threads = [] for i in range(self.num_thread): threads.append(threading.Thread(target=self.object_func,args = args_queue)) for t in threads: t.start() for t in threads: t.join()

模型參數選擇實例

# -*- coding: utf-8 -*-# @Time : 2021/2/4 14:36# @Author : CyrusMay WJ# @FileName: run.py# @Software: PyCharm# @Blog :https://blog.csdn.net/Cyrus_Mayimport queueimport threadingimport numpy as npfrom sklearn.datasets import load_bostonfrom sklearn.svm import SVRimport loggingimport sysclass CyrusThread(object): def __init__(self,num_thread = 10,logger=None): ''' :param num_thread: 線程數 :param logger: 日志對象 ''' self.num_thread = num_thread self.logger = logger def object_func(self,args_queue,max_q): while 1: try:arg = args_queue.get_nowait()step = args_queue.qsize()self.logger.info('progress:{}{}'.format(max_q,max_q-step)) except:self.logger.info('no more arg for args_queue!')break # 業務代碼 C, epsilon, gamma = arg[0], arg[1], arg[2] svr_model = SVR(C=C, epsilon=epsilon, gamma=gamma) x, y = load_boston()['data'], load_boston()['target'] svr_model.fit(x, y) self.logger.info('score:{}'.format(svr_model.score(x,y))) def run(self,args): args_queue = queue.Queue() max_q = 0 for value in args: args_queue.put(value) max_q += 1 threads = [] for i in range(self.num_thread): threads.append(threading.Thread(target=self.object_func,args = (args_queue,max_q))) for t in threads: t.start() for t in threads: t.join()# 創建日志對象logger = logging.getLogger()logger.setLevel(logging.INFO)screen_handler = logging.StreamHandler(sys.stdout)screen_handler.setLevel(logging.INFO)formatter = logging.Formatter(’%(asctime)s - %(module)s.%(funcName)s:%(lineno)d - %(levelname)s - %(message)s’)screen_handler.setFormatter(formatter)logger.addHandler(screen_handler)# 創建需要調整參數的集合args = []for C in [i for i in np.arange(0.01,1,0.01)]: for epsilon in [i for i in np.arange(0.001,1,0.01)] + [i for i in range(1,10,1)]: for gamma in [i for i in np.arange(0.001,1,0.01)] + [i for i in range(1,10,1)]: args.append([C,epsilon,gamma])# 創建多線程工具threading_tool = CyrusThread(num_thread=20,logger=logger)threading_tool.run(args)

運行結果

2021-02-04 20:52:22,824 - run.object_func:31 - INFO - progress:117621912021-02-04 20:52:22,824 - run.object_func:31 - INFO - progress:117621922021-02-04 20:52:22,826 - run.object_func:31 - INFO - progress:117621932021-02-04 20:52:22,833 - run.object_func:31 - INFO - progress:117621942021-02-04 20:52:22,837 - run.object_func:31 - INFO - progress:117621952021-02-04 20:52:22,838 - run.object_func:31 - INFO - progress:117621962021-02-04 20:52:22,841 - run.object_func:31 - INFO - progress:117621972021-02-04 20:52:22,862 - run.object_func:31 - INFO - progress:117621982021-02-04 20:52:22,873 - run.object_func:31 - INFO - progress:117621992021-02-04 20:52:22,884 - run.object_func:31 - INFO - progress:1176219102021-02-04 20:52:22,885 - run.object_func:31 - INFO - progress:1176219112021-02-04 20:52:22,897 - run.object_func:31 - INFO - progress:1176219122021-02-04 20:52:22,900 - run.object_func:31 - INFO - progress:1176219132021-02-04 20:52:22,904 - run.object_func:31 - INFO - progress:1176219142021-02-04 20:52:22,912 - run.object_func:31 - INFO - progress:1176219152021-02-04 20:52:22,920 - run.object_func:31 - INFO - progress:1176219162021-02-04 20:52:22,920 - run.object_func:39 - INFO - score:-0.016742839142878552021-02-04 20:52:22,929 - run.object_func:31 - INFO - progress:1176219172021-02-04 20:52:22,932 - run.object_func:39 - INFO - score:-0.0079923541709525652021-02-04 20:52:22,932 - run.object_func:31 - INFO - progress:1176219182021-02-04 20:52:22,945 - run.object_func:31 - INFO - progress:1176219192021-02-04 20:52:22,954 - run.object_func:31 - INFO - progress:1176219202021-02-04 20:52:22,978 - run.object_func:31 - INFO - progress:1176219212021-02-04 20:52:22,984 - run.object_func:39 - INFO - score:-0.0187699348072465362021-02-04 20:52:22,985 - run.object_func:31 - INFO - progress:117621922

到此這篇關于python中threading和queue庫實現多線程編程的文章就介紹到這了,更多相關python 多線程編程內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久人人97超碰国产公开结果| 综合日韩在线| 日韩高清不卡一区二区| 丝袜亚洲精品中文字幕一区| 久久午夜视频| 狠狠色狠狠色综合日日tαg| 欧美日韩国产综合网| 免费日韩av片| 日本亚洲视频| 国产极品模特精品一二| 亚洲欧美在线综合| 中文字幕在线免费观看视频| 日韩在线观看一区| 国产一区日韩欧美| 欧美女激情福利| 丝袜美腿亚洲一区二区图片| 亚洲精品一区二区在线播放∴| 天堂网av成人| 久久国产精品99国产| 日韩在线麻豆| 九九九精品视频| 国产精品伦理久久久久久| 国产综合亚洲精品一区二| 中文一区一区三区免费在线观| 欧美日本一区| 久热综合在线亚洲精品| 国内揄拍国内精品久久| 日本va欧美va欧美va精品| 亚洲精品a级片| 久久久久久久欧美精品| 国产欧美日韩在线一区二区 | 久久精品一本| 日韩欧美精品综合| 久久xxxx精品视频| 中文字幕av亚洲精品一部二部 | 亚洲免费一区三区| 日韩精品免费视频一区二区三区| 麻豆精品99| 激情欧美一区| 日韩高清三区| 日韩美女一区二区三区在线观看| 9色精品在线| 国产日韩欧美高清免费| 久久久一本精品| 亚洲理论在线| 精品国产鲁一鲁****| 欧美色图国产精品| 久久国产尿小便嘘嘘| 久久理论电影| 国产欧美一区二区三区米奇| 日韩免费在线| 日韩一区二区三区免费视频| 亚洲午夜天堂| 四虎在线精品| 91精品在线观看国产| 欧美综合社区国产| 久久久精品久久久久久96 | 亚洲免费播放| 久久gogo国模啪啪裸体| 日韩精品午夜| 国产精品永久| 性欧美69xoxoxoxo| 国产精品久av福利在线观看| 亚洲国产一区二区在线观看| 欧美国产先锋| 国产一区二区高清| 国产高清不卡| 日韩高清三区| 制服诱惑一区二区| 在线天堂中文资源最新版| 无码日韩精品一区二区免费| 成人精品天堂一区二区三区| 91麻豆精品激情在线观看最新| 欧美福利在线| 你懂的国产精品| 天堂va蜜桃一区二区三区| 日韩一区二区三区在线免费观看| 国产伦精品一区二区三区千人斩| 亚洲精品va| 丁香六月综合| 国产精品视频一区二区三区四蜜臂 | 国产精品第一| 中文在线日韩| 在线一区电影| 高清久久精品| 国产精品白丝久久av网站| 一区二区电影在线观看| 欧美大黑bbbbbbbbb在线| 美女福利一区二区三区| 麻豆精品视频在线| 日韩激情网站| 视频一区二区中文字幕| 亚洲精品网址| 久久精品亚洲人成影院 | 久久免费黄色| 国产成人久久精品麻豆二区| 国产精品第一国产精品| 日韩黄色av| 亚洲影院天堂中文av色| 99pao成人国产永久免费视频| 九色porny丨国产首页在线| 成人在线免费观看91| 国产伦精品一区二区三区千人斩| 日韩精品一二三区| 中文一区在线| 一区福利视频| 亚洲电影在线| 久久蜜桃精品| 久久精品123| 国产91久久精品一区二区| 欧洲精品一区二区三区| 日韩电影免费网址| 欧美日韩视频网站| 成人日韩精品| 久久九九国产| 亚洲a一区二区三区| 日韩精品一卡| 成人看片网站| 香蕉精品久久| 亚洲黄色在线| 亚洲一区二区成人| 伊人成人在线视频| 99香蕉国产精品偷在线观看| 狠狠色狠狠色综合日日tαg| 国产精品美女久久久浪潮软件| 中文亚洲免费| 亚洲精品看片| 日韩精品一区二区三区中文在线| 日韩不卡一二三区| 久久99偷拍| 国产精品久久久久久久免费观看| yellow在线观看网址| 久久久噜噜噜| 国产亚洲精品自拍| 亚洲91在线| 青青草精品视频| 国产精品一区三区在线观看| 久久成人福利| 日韩免费看片| 一区二区视频欧美| 日本在线视频一区二区| 国产精品美女在线观看直播| 国产成人免费精品| 99久久99久久精品国产片果冰| 黄色成人91| 日韩精品亚洲aⅴ在线影院| 国产精品久久久免费| 国产精品蜜芽在线观看| 欧美中文一区二区| 亚洲91在线| 成人污污视频| 久久精品官网| 蜜桃久久精品一区二区| 国产日韩欧美一区二区三区 | 国产suv精品一区| 欧美日韩精品在线一区| 免费在线观看不卡| 国产精品资源| 久久久久久美女精品| 亚洲婷婷丁香| 精品国产成人| 国产视频久久| 国产另类在线| 久久久久国产| 亚洲精品日本| 韩国久久久久久| 中文欧美日韩| 欧美国产先锋| 亚洲精华国产欧美| 国产精品一区二区免费福利视频| sm捆绑调教国产免费网站在线观看 | 亚洲一二三区视频| 免费在线播放第一区高清av| 亚洲91视频| 国产私拍福利精品视频二区| 日韩高清欧美| 日韩不卡在线观看日韩不卡视频| 日韩精品91| 欧美日韩午夜电影网| 99久久亚洲精品蜜臀| 欧美精品国产白浆久久久久| 欧美一区二区三区高清视频| 欧美亚洲色图校园春色| 久久美女精品| 欧美精品不卡| 日韩在线a电影| 日本久久精品| 亚洲青青久久| 成人羞羞在线观看网站| 日韩精品国产精品| 日韩在线观看| 欧美精品中文| 亚洲一区欧美二区| 国产精品毛片久久| 日本中文字幕一区二区视频| 久久婷婷丁香| 麻豆国产一区| 男女激情视频一区| 色天使综合视频| 国产黄色精品|