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中使用OpenCV进行人脸检测的例子
Apr 18 Python
Python 内置函数complex详解
Oct 23 Python
django使用xlwt导出excel文件实例代码
Feb 06 Python
Python爬虫框架scrapy实现的文件下载功能示例
Aug 04 Python
pandas 把数据写入txt文件每行固定写入一定数量的值方法
Dec 28 Python
PowerBI和Python关于数据分析的对比
Jul 11 Python
在VS2017中用C#调用python脚本的实现
Jul 31 Python
使用tensorflow DataSet实现高效加载变长文本输入
Jan 20 Python
Python模块/包/库安装的六种方法及区别
Feb 24 Python
tensorflow使用CNN分析mnist手写体数字数据集
Jun 17 Python
Python调用JavaScript代码的方法
Oct 27 Python
解决python3安装pandas出错的问题
May 20 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 a simple smtp class
2007/11/26 PHP
php实现mysql封装类示例
2014/05/07 PHP
php实现将字符串按照指定距离进行分割的方法
2015/03/14 PHP
PHP中的traits简单使用实例
2015/05/13 PHP
JS字符串累加Array不一定比字符串累加快(根据电脑配置)
2012/05/14 Javascript
图片延迟加载的实现代码(模仿懒惰)
2013/03/29 Javascript
介绍JavaScript的一个微型模版
2015/06/24 Javascript
jQuery+Ajax实现无刷新分页
2015/10/30 Javascript
JavaScript面试题(指针、帽子和女朋友)
2016/11/23 Javascript
利用Bootstrap实现表格复选框checkbox全选
2016/12/21 Javascript
js简单实现网页换肤功能
2017/04/07 Javascript
Vue制作Todo List网页
2017/04/26 Javascript
微信小程序中遇到的iOS兼容性问题小结
2018/11/14 Javascript
微信小程序发送短信验证码完整实例
2019/01/07 Javascript
vue-router传参用法详解
2019/01/19 Javascript
基于vue实现圆形菜单栏组件
2019/07/05 Javascript
简单实现节流函数和防抖函数过程解析
2019/10/08 Javascript
js实现鼠标拖拽div左右滑动
2020/01/15 Javascript
vue实现输入框自动跳转功能
2020/05/20 Javascript
[03:30]DOTA2完美“圣”典精彩集锦
2016/12/27 DOTA
[38:54]完美世界DOTA2联赛PWL S2 Rebirth vs LBZS 第一场 11.28
2020/12/01 DOTA
[01:01:23]完美世界DOTA2联赛PWL S2 Forest vs FTD.C 第一场 11.26
2020/11/30 DOTA
python调用短信猫控件实现发短信功能实例
2014/07/04 Python
深入解读Python解析XML的几种方式
2016/02/16 Python
Python中强大的命令行库click入门教程
2016/12/26 Python
在Python程序员面试中被问的最多的10道题
2017/12/05 Python
Python2和Python3的共存和切换使用
2019/04/12 Python
python安装pil库方法及代码
2019/06/25 Python
Python3 shutil(高级文件操作模块)实例用法总结
2020/02/19 Python
教师队伍管理制度
2014/01/14 职场文书
初中高效课堂实施方案
2014/02/26 职场文书
规划编制实施方案
2014/03/15 职场文书
世界卫生日宣传活动总结
2015/02/09 职场文书
超市员工辞职信范文
2015/05/12 职场文书
高中生综合素质评价范文
2015/08/18 职场文书
css3 利用transform-origin 实现圆点分布在大圆上布局及旋转特效
2021/04/29 HTML / CSS