python3多线程自定义threading子类
python3多线程自定义threading子类
- 解决问题
- 代码实例
解决问题
1、python3多线程自定义threading.Thread的子类;
2、多线程并行,获取多线程运行结果
代码实例
import threading
from time import sleep
exitFlag = True
def pp1(*args):i = 1while(exitFlag):print('\r'+' '*20,end='')print('\r线程1运行中'+'.'*(i%7),end='')sleep(0.5)i = (i>=6 and 1 or i+1) #if i>=6则i=1,否则i=i+1print('线程1结束')def pp2(x,y):sleep(3)print('\n线程2结束')return x + yclass MyThread(threading.Thread): #MyThread类继承threading.Thread类def __init__(self,func,args1=None,args2=None):threading.Thread.__init__(self)self.func = funcself.args1 = args1self.args2 = args2def run(self): #t.start()语句调用run方法self.result = self.func(self.args1,self.args2) def getResult(self): #getResult方法可获得func函数return的结果threading.Thread.join(self)return self.resultt1 = MyThread(pp1) #初始化t1
t2 = MyThread(pp2,2,3) #初始化t1
t1.start() #启动线程t1
t2.start() #启动线程t2
t2.join() #判断线程t2运行结束
exitFlag = False #线程2运行结束后,线程1才能结束
t1.join() #判断线程t1运行结束,线程t1结束后,主线程才能往下运行
print('线程2返回结果: ',t2.getResult())
print('主线程结束')
python3多线程自定义threading子类相关推荐
- 【Python】多线程及threading模块介绍
目录 1. 多线程简单介绍 2. threading模块介绍 2.1 threading模块常用方法 2.2 Thread类使用 2.2.1 使用构造函数传递可调用对象的方法创建线程 2.2.2 继 ...
- python3多线程第三方库_Python3 多线程
Python3 多线程 多线程类似于同时执行多个不同程序,多线程运行有如下优点: 使用线程可以把占据长时间的程序中的任务放到后台去处理. 用户界面可以更加吸引人,比如用户点击了一个按钮去触发某些事件的 ...
- python3多线程编程_Python 3多线程编程学习笔记-基础篇
本文是学习<Python核心编程>的学习笔记,介绍了Python中的全局解释器锁和常用的两个线程模块:thread, threading,并对比他们的优缺点和给出简单的列子. 全局解释器锁 ...
- python 线程超时设置_爬虫基础知识(一)多线程与threading模块
点击上方"蓝字"关注我们,第一时间推送优质文章! 前言 "本期带来的文章是python中多线程与threading模块的主要内容.主要分为「并发与并行」,「进程与线程」, ...
- python3多线程实战(python3经典编程案例)
python3多进程实战(python3经典编程案例) python3多线程实战(python3经典编程案例) python3 协程实战(python3经典编程案例) 总结: python多线程适用在 ...
- Python3 多线程
Python3 多线程 多线程类似于同时执行多个不同程序,多线程运行有如下优点: 使用线程可以把占据长时间的程序中的任务放到后台去处理. 用户界面可以更加吸引人,比如用户点击了一个按钮去触发某些事件的 ...
- Python3 入门教程||Python3 SMTP发送邮件||Python3 多线程
Python3 SMTP发送邮件 在Python3 中应用的SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它 ...
- python3 多线程_python3多线程知识点总结
多线程类似于同时执行多个不同程序,多线程运行有如下优点: 使用线程可以把占据长时间的程序中的任务放到后台去处理. 用户界面可以更加吸引人,比如用户点击了一个按钮去触发某些事件的处理,可以弹出一个进度条 ...
- python多线程爬虫实例-Python3多线程爬虫实例讲解代码
多线程概述 多线程使得程序内部可以分出多个线程来做多件事情,充分利用CPU空闲时间,提升处理效率.python提供了两个模块来实现多线程thread 和threading ,thread 有一些缺点, ...
最新文章
- 玩转ios友盟远程推送,16年5月图文防坑版
- 一文详解缺陷检测相关算法!
- 使用asm工具让移动设备投影到pc上
- Hadoop MapReduce的模式、算法和用例
- buu [HDCTF2019]bbbbbbrsa
- 考研学弟问的n个问题,梳理一下分享给大家
- sizeof是c语言的一种运算符,C语言位运算和sizeof运算符详解
- db:migrate
- Microsoft Enterprise Library---解读Configuration之元数据
- 如何解决error message Data cannot be maintained for set type COM_TA_R3_ID
- GitLab 服务器的迁移以及注意点
- nologging与append测试
- js阻止浏览器默认事件
- centos 7 安装ntp服务器
- JQuery Smart UI 简介 (一) — 纯Htm+Js的ajax开发框架[演示Demo已放出]
- 阶段3 3.SpringMVC·_03.SpringMVC常用注解_8 SessionAttributes注解
- linux内核奇遇记之md源代码解读之四
- mysql列名命名_重命名MySQL中的列名?
- 数据库 SQL 语句学习
- 操作iOS模拟器命令(xcrun simctl)