我们都知道,代码编程不是固定的东西,而是非常灵活的内容,根据不同的内容,我们可以拓展出很多条内容,最终目的还是为了可以实现结果,给大家举例说明其中一个最常用的多线程吧~以及实现的几种方式。
成都创新互联是一家集网站建设,临颍企业网站建设,临颍品牌网站建设,网站定制,临颍网站建设报价,网络营销,网络优化,临颍网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
1. 用函数创建多线程
在Python3中,Python提供了一个内置模块 threading.Thread,可以很方便地让我们创建多线程。
举个例子
import time from threading import Thread # 自定义线程函数。 def target(name="Python"): for i in range(2): print("hello", name) time.sleep(1) # 创建线程01,不指定参数 thread_01 = Thread(target=target) # 启动线程01 thread_01.start() # 创建线程02,指定参数,注意逗号 thread_02 = Thread(target=target, args=("MING",)) # 启动线程02 thread_02.start()
可以看到输出
hello Python hello MING hello Python hello MING
2. 用类创建多线程
相比较函数而言,使用类创建线程,会比较麻烦一点。
首先,我们要自定义一个类,对于这个类有两点要求,
l 必须继承 threading.Thread 这个父类;
l 必须复写 run 方法。
来看一下例子为了方便对比,run函数我复用上面的main。
import time from threading import Thread class MyThread(Thread): def __init__(self, type="Python"): # 注意:super().__init__() 必须写 # 且最好写在第一行 super().__init__() self.type=type def run(self): for i in range(2): print("hello", self.type) time.sleep(1) if __name__ == '__main__': # 创建线程01,不指定参数 thread_01 = MyT hread() # 创建线程02,指定参数 thread_02 = MyThread("MING") thread_01.start() thread_02.start()
当然结果也是一样的。
hello Python hello MING hello Python hello MING
3. 线程对象的方法
上面介绍了当前 Python 中创建线程两种主要方法。
# 如上所述,创建一个线程 t=Thread(target=func) # 启动子线程 t.start() # 阻塞子线程,待子线程结束后,再往下执行 t.join() # 判断线程是否在执行状态,在执行返回True,否则返回False t.is_alive() t.isAlive() # 设置线程是否随主线程退出而退出,默认为False t.daemon = True t.daemon = False # 设置线程名 t.name = "My-Thread"
至此,Python线程基础知识,我们大概都介绍完了。感兴趣的小伙伴可以多浏览看下内容哦~如果还想知道更多的python知识,可以到python学习网进行查询。
文章题目:创新互联Python教程:python中实现多线程有几种方式?
文章地址:http://www.csdahua.cn/qtweb/news1/13351.html
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网