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

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

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

瀏覽:205日期: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久久,三上悠亚国产精品一区二区三区
合欧美一区二区三区| 久久a爱视频| 欧美亚洲国产精品久久| 欧美日韩视频网站| 国产成人精品亚洲日本在线观看| 麻豆视频在线观看免费网站黄| 色综合狠狠操| 九色porny丨国产首页在线| 99精品在线观看| 欧美日韩激情| 天使萌一区二区三区免费观看| 亚洲精品在线国产| 国产精品欧美三级在线观看 | 好吊日精品视频| 日韩精品一区第一页| 日韩国产在线一| 精品国产一区二区三区性色av| 中文在线免费视频| 亚洲精品一二三区区别| 亚洲精品中文字幕99999| 国产精品久久乐| 激情欧美国产欧美| 日本一区二区三区视频在线看| 精品国产午夜| 伊人久久婷婷| 欧美亚洲国产日韩| 91看片一区| 日韩精品免费一区二区夜夜嗨| 电影91久久久| 男女男精品视频网| 国内不卡的一区二区三区中文字幕| 亚洲国产专区| 日本午夜精品久久久久| bbw在线视频| 亚洲人成毛片在线播放女女| 老色鬼精品视频在线观看播放| 国产综合婷婷| 久久av影院| 亚洲女人av| 久久伊人久久| 一区在线免费| 黄色在线网站噜噜噜| 亚洲麻豆一区| 亚洲五月婷婷| 精品欧美日韩精品| 亚洲久久视频| 亚洲第一精品影视| 国产精品久久亚洲不卡| 黄色成人在线网址| 精品国产欧美日韩| 日本伊人午夜精品| 不卡一区综合视频| 国产精品xxx在线观看| 亚洲欧美不卡| 天堂网av成人| 久久精品99国产精品| 欧美成人日韩| zzzwww在线看片免费| 国产情侣一区| 中文字幕一区二区三区四区久久| 久久久噜噜噜| 国产精品18| 日本一区二区三区中文字幕| 91久久在线| 日韩欧美不卡| 美女久久精品| 欧美一区自拍| 亚洲有吗中文字幕| 1024精品久久久久久久久| 日韩成人免费| 国产高清日韩| 日本久久二区| 一区二区电影在线观看| 一区福利视频| 99视频精品全部免费在线视频| 成人亚洲精品| 麻豆一区二区在线| 国产日韩欧美一区| 日本不卡视频在线观看| 日韩在线a电影| 99国产精品视频免费观看一公开| 91精品国产福利在线观看麻豆| 国产夫妻在线| 欧美男人天堂| 日韩中文字幕高清在线观看| 久久这里只有精品一区二区| 国产三级一区| 国产精品欧美三级在线观看| 国产伦一区二区三区| 欧美日本不卡高清| 国产精品自在| 免费精品一区| 国产96在线亚洲| 91亚洲自偷观看高清| 麻豆一区二区三| 国产一区二区亚洲| 中文字幕在线高清| 色网在线免费观看| 天堂8中文在线最新版在线| 波多野结衣久久精品| 国产黄大片在线观看| 国产精品字幕| 久久久久久免费视频| 99精品在线免费在线观看| 精品一区在线| 欧美综合国产| 日韩中文字幕一区二区高清99| 日本91福利区| 久久精品九色| www在线观看黄色| 香蕉久久精品| 三级亚洲高清视频| 91精品国产自产观看在线| 国产免费av国片精品草莓男男| 国产精品s色| 日本欧美国产| 亚洲大全视频| 亚洲精品大片| 麻豆91小视频| 99久久久久久中文字幕一区| 91久久中文| 婷婷精品在线| 精品久久不卡| 午夜视频精品| 中文字幕一区二区三区在线视频| 国产色噜噜噜91在线精品| 97人人精品| 国产精品美女| 国产日产一区| 亚洲成av在线| 久久国产精品久久久久久电车| 91国内精品| а√天堂中文在线资源8| 午夜精品婷婷| 涩涩涩久久久成人精品| 97精品国产99久久久久久免费| 国产成人精品999在线观看| 日韩精品影视| 18国产精品| 久久久久99| 日本不卡中文字幕| 日韩免费高清| **爰片久久毛片| 啪啪国产精品| 日本高清久久| 亚洲国产成人二区| 首页欧美精品中文字幕| 免费在线欧美黄色| 欧美一级专区| 日本一二区不卡| 在线观看一区| 国产一区二区三区成人欧美日韩在线观看| 在线亚洲观看| 成人在线黄色| 美国欧美日韩国产在线播放| 成人黄色av| 久久激情综合网| 欧美日韩国产免费观看视频| 久久精品国产99国产| 男人操女人的视频在线观看欧美| 日韩综合在线| 欧美一区免费| 免费日韩av| 日韩和的一区二在线| 国产日韩欧美一区在线| 一本色道精品久久一区二区三区| 国产不卡一区| 日韩精品国产精品| 噜噜噜躁狠狠躁狠狠精品视频| 中文字幕人成乱码在线观看| 国产欧美亚洲一区| 视频国产精品| 亚洲综合不卡| 亚州av乱码久久精品蜜桃| 成人在线免费观看网站| 亚洲另类av| 亚洲激情婷婷| 日韩欧美三级| 国产一区二区视频在线看| 日韩av网站免费在线| 夜夜嗨一区二区三区| 人人精品亚洲| 成人在线黄色| 久久男人av| 美女视频一区在线观看| 日韩高清一区二区| 老牛国产精品一区的观看方式| 激情五月色综合国产精品| 日韩电影免费在线观看| 精品三级在线| 国产精品一卡| 青草国产精品| 日韩超碰人人爽人人做人人添| 国产一级久久| 国产精品人人爽人人做我的可爱| 亚洲精品一级二级| 日韩精品第一区| 国产传媒在线| 成人小电影网站| 日韩国产网站|