一阶段day20-02多线程2

2018-10-25  本文已影响0人  ATM_shark

1、创建多线程1

通过Thread类创建对象,将需要在子线程中执行的函数作为target的参数传进去(即01-多线程.py)

2、创建多线程2

a\写一个自己的类去继承Thread的类
b\实现当前类run的方法,run中的任务就是在子线程中执行的任务
c\创建当前类的对象,就是线程对象。然后调用start去执行线程中任务

(1)创建线程类
import time
import  datetime
import threading
from threading import Thread
class DownloadThread(Thread):
    def __init__(self,name):
        super().__init__()
        self.name=name
    def run(self):
        print(threading.current_thread())
        print(datetime.datetime.now(),'下载%s'%self.name)
        time.sleep(3)
        print('下载成功')
    # def __repr__(self):
    #     return str(self.__dict__)

(2)创建线程对象

t1=DownloadThread('海贼王')
t2=DownloadThread('犬夜叉')
# print(t1)

(3)通过start执行run方法

注意:必须通过start去调用run方法,因为直接调用run方法是用主线程执行,而非子线程;
t1.start()
t2.start()
t1.run()
上一篇 下一篇

猜你喜欢

热点阅读