zoukankan      html  css  js  c++  java
  • 继承threading.Thread创建线程

    • Python中,通过继承类threading.Thread的方式来创建一个线程。这种方法只要重threading.Thread中的方法run(),然后再调用方法start()就能创建线程,并运行方法run()中的代码。

    •  1 import threading
       2 import time
       3 def fun1(delay):
       4     print('线程{0}开始运行fun1'.format(threading.current_thread().getName()))
       5     time.sleep(delay)
       6     print('线程{0}运行fun1结束'.format(threading.current_thread().getName()))
       7 def fun2(delay):
       8     print('线程{0}开始运行fun2'.format(threading.current_thread().getName()))
       9     time.sleep(2)
      10     print('线程{0}运行fun2结束'.format(threading.current_thread().getName()))
      11 #创建线程类继承threading.Thread
      12 class MyThread(threading.Thread):
      13     #重写父类的构造方法,其中func是线程函数,args是传入线程的参数,name是线程名
      14     def __init__(self,func,name,args):
      15         super().__init__(target=func,name=name,args=args)
      16     #重写父类的run()方法
      17     def run(self):
      18         self._target(*self._args)
      19 
      20 if __name__=='__main__':
      21     print('开始运行')
      22     #创建线程
      23     t1 = MyThread(fun1,'thread-1',(2,))
      24     t2 = MyThread(fun2,'thread-2',(4,))
      25     t1.start()
      26     t2.start()
      27     t1.join()
      28     t2.join()
      1 开始运行
      2 线程thread-1开始运行fun1
      3 线程thread-2开始运行fun2
      4 线程thread-1运行fun1结束
      5 线程thread-2运行fun2结束
    正是江南好风景
  • 相关阅读:
    场景设计法
    判定表驱动分析方法
    错误推测法
    Ubuntu软件包管理命令全面集锦
    MySql模糊查询
    VC++ 列表控件的使用方法
    Java笔记原生数据类型【二】
    DEDECMS 关键字不能小于2个字节!
    Linux 使用yum install安装mysql登陆不上解决办法
    PHP数据学习-二维数组【3】
  • 原文地址:https://www.cnblogs.com/monsterhy123/p/12682568.html
Copyright © 2011-2022 走看看