Python多线程获取返回值代码实例


Posted in Python onFebruary 17, 2020

这篇文章主要介绍了Python多线程获取返回值代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

在使用多线程的时候难免想要获取其操作完的返回值进行其他操作,下面的方法以作参考:

一,首先重写threading类,使其满足调用特定的方法获取其返回值

import threading
class MyThread(threading.Thread):
  """重写多线程,使其能够返回值"""
  def __init__(self, target=None, args=()):
    super(MyThread, self).__init__()
    self.func = target
    self.args = args

  def run(self):
    self.result = self.func(*self.args)

  def get_result(self):
    try:
      return self.result # 如果子线程不使用join方法,此处可能会报没有self.result的错误
    except Exception:
      return None

二,调用get_result()方法,最终列表retval就是多线程返回值的集合:

def parse_detail_page(self,items_list):
  retval, RetList, _Threads = [], [], []
  for url in items_list:
    t = MyThread(target=self.threadItem, args=(url,))
    t.start()
    _Threads.append(t)
  for t in _Threads:
    t.join()
    retval.append(t.get_result())
def threadItem(self,url):
  """多线程请求""" 
 response = requests.get(url)
  return response.text

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
二种python发送邮件实例讲解(python发邮件附件可以使用email模块实现)
Dec 03 Python
linux系统使用python监测网络接口获取网络的输入输出
Jan 15 Python
Python正则替换字符串函数re.sub用法示例
Jan 19 Python
Python实现Youku视频批量下载功能
Mar 14 Python
python 性能优化方法小结
Mar 31 Python
Python线程下使用锁的技巧分享
Sep 13 Python
用Python和WordCloud绘制词云的实现方法(内附让字体清晰的秘笈)
Jan 08 Python
Python函数和模块的使用总结
May 20 Python
解决Djang2.0.1中的reverse导入失败的问题
Aug 16 Python
python 实现 hive中类似 lateral view explode的功能示例
May 18 Python
Selenium执行完毕未关闭chromedriver/geckodriver进程的解决办法(java版+python版)
Dec 07 Python
教你怎么用python selenium实现自动化测试
May 27 Python
Python实现ATM系统
Feb 17 #Python
python设置环境变量的作用整理
Feb 17 #Python
python数据爬下来保存的位置
Feb 17 #Python
使用TFRecord存取多个数据案例
Feb 17 #Python
从多个tfrecord文件中无限读取文件的例子
Feb 17 #Python
Python3连接Mysql8.0遇到的问题及处理步骤
Feb 17 #Python
python3连接MySQL8.0的两种方式
Feb 17 #Python
You might like
两个开源的Php输出Excel文件类
2010/02/08 PHP
PHP实现上传图片到 zimg 服务器
2016/10/19 PHP
JavaScript中两个感叹号的作用说明
2011/12/28 Javascript
JavaScript数据结构与算法之栈详解
2015/03/12 Javascript
jQuery遍历DOM元素与节点方法详解
2016/04/14 Javascript
Javascript之BOM(window对象)详解
2016/05/25 Javascript
ES6通过babel转码使用webpack使用import关键字
2016/12/13 Javascript
微信小程序 Toast自定义实例详解
2017/01/20 Javascript
jQuery插件FusionWidgets实现的Bulb图效果示例【附demo源码下载】
2017/03/23 jQuery
JS实现二叉查找树的建立以及一些遍历方法实现
2017/04/17 Javascript
jQuery Ajax使用FormData上传文件和其他数据后端web.py获取
2017/06/11 jQuery
使用JS中的Replace()方法遇到的问题小结
2017/10/20 Javascript
AngularJS基于MVC的复杂操作实例讲解
2017/12/31 Javascript
vue2 mint-ui loadmore实现下拉刷新,上拉更多功能
2018/03/21 Javascript
vue-lazyload使用总结(推荐)
2018/11/01 Javascript
koa2 从入门到精通(小结)
2019/07/23 Javascript
Echarts.js无法引入问题解决方案
2020/10/30 Javascript
python自定义解析简单xml格式文件的方法
2015/05/11 Python
在Python的Django框架的视图中使用Session的方法
2015/07/23 Python
python 读取excel文件生成sql文件实例详解
2017/05/12 Python
pygame游戏之旅 如何制作游戏障碍
2018/11/20 Python
Python对接 xray 和微信实现自动告警
2019/09/17 Python
Python多进程编程multiprocessing代码实例
2020/03/12 Python
新秀丽拉杆箱美国官方网站:Samsonite美国
2016/07/25 全球购物
国外平面设计第一市场:99designs
2016/10/25 全球购物
丹麦优惠购物网站:PLUSSHOP
2019/03/24 全球购物
亿阳信通股份有限公司C#笔试题
2016/12/06 面试题
公司总经理任命书
2014/06/05 职场文书
工作失职检讨书500字
2014/10/17 职场文书
违反交通安全法检讨书
2014/10/24 职场文书
明确岗位职责
2015/02/14 职场文书
2016年高校自主招生自荐信范文
2015/03/24 职场文书
公司出差管理制度范本
2015/08/05 职场文书
同学聚会祝酒词
2015/08/10 职场文书
Python selenium绕过webdriver监测执行javascript
2022/04/12 Python
前端canvas中物体边框和控制点的实现示例
2022/08/05 Javascript