python语言中threading.Thread类的使用方法


1. 编程语言里面的任务和线程是很重要的一个功能。在python里面,线程的创建有两种方式,其一使用Thread类创建

# 导入Python标准库中的Thread模块 from threading import Thread # 创建一个线程 mthread = threading.Thread(target=function_name, args=(function_parameter1, function_parameterN)) # 启动刚刚创建的线程 mthread .start()

function_name: 需要线程去执行的方法名

args: 线程执行方法接收的参数,该属性是一个元组,如果只有一个参数也需要在末尾加逗号。

2. 重新写一个类,继承threading.Thread

import threading, time class MyThread(threading.Thread): def __init__(self): threading.Thread.__init__(self) def run(self): global n, lock time.sleep(1) if lock.acquire(): print n , self.name n += 1
            lock.release() if "__main__" == __name__: n = 1 ThreadList = [] lock = threading.Lock() for i in range(1, 200): t = MyThread() ThreadList.append(t) for t in ThreadList: t.start() for t in ThreadList: t.join()

重写了父类threading.Thread的run()方法,其他方法(除了构造函数)都不应在子类中被重写。使用线程的时候生成一个子线程类的对象,然后对象调用start()方法就可以运行线程。

4. 线程等待,我们的主线程不会等待子线程执行完毕再结束自身。可以使用Thread类的join()方法来子线程执行完毕以后,主线程再关闭。

t.join()

5. isAlive()方法测试线程是否是活动的,返回线程名。 
setName(name) 
设置线程名。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM