品易云推流 关闭
文章详情页
文章 > Python基础教程 > python3多线程中如何改写run()函数?

python3多线程中如何改写run()函数?

头像

小妮浅浅

2020-11-24 16:50:263701浏览 · 0收藏 · 0评论

我们对于函数的使用一般是直接根据其作用进行举例讲解,最近偶然的一次多线程的代码练习中,让小编发现在构建多线程的时候,我们也可以对函数进行重写。小编马上进行了这个函数内容的整理,为了让大家能理解前后的内容,我们以多线程中构建新线程为例,在使用Thread时,是如何让run函数进行改写的呢?


构建新的线程有两种方法,一种是直接通过Thread方法构建一个线程,另一种时通过继承Thread类,重写run()方法构建。

Thread(group=None,target=None,name=None,args=(),kwargs={})

groups :线程组,这个暂时不用管,官方文档是这样说的:“group should be None”,所以我们不写就行

target :我们要使用线程的方法

name :线程名

args/kwargs :传给方法的参数。要注意,如果只有一个参数,元组记得加个“,”,否则就会报错

继承Thread类,并重写run()

import threading
import time
 
class MyThread(threading.Thread):
    def __init__(self,arg):
        # 显式的调用父类的初始化函数。
        super(MyThread, self).__init__()
        self.arg=arg
 
 
    # 定义每个线程要运行的函数   
    def run(self):
        time.sleep(1)
        print("我的参数为{}".format(self.arg))
 
for i in range(1,6):
    t =MyThread(i)
    t.start()
    t.join()
 
 
print("任务结束")


本篇内容用到了python多线程中的Thread方法,在构建线程的同时也可以改写run()函数,可谓是一举两得的办法。想要挑战的小伙伴,可以按着小编的方法尝试一下~更多Python学习指路:PyThon学习网教学中心


关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图