(四)多线程之 Thread 对象的其他属性或方法
2020-12-18 16:34
标签:spl 子线程 started color put tran list thread man 一、Thread 对象的其他属性或方法 1,介绍: 2,验证: 3,主线程等待子线程结束: (四)多线程之 Thread 对象的其他属性或方法 标签:spl 子线程 started color put tran list thread man 原文地址:https://www.cnblogs.com/zoling7/p/13387074.html
Thread实例对象的方法
# isAlive(): 返回线程是否活动的。
# getName(): 返回线程名。
# setName(): 设置线程名。
threading模块提供的一些方法:
# threading.currentThread(): 返回当前的线程变量。
# threading.enumerate(): 返回一个包含正在运行的线程的list。正在运行指线程启动后、结束前,不包括启动前和终止后的线程。
# threading.activeCount(): 返回正在运行的线程数量,与len(threading.enumerate())有相同的结果。
from threading import Thread,currentThread,active_count,enumerate
import time
def task():
# currentThread() 实际上拿到的就是对象t
print("%s is running." % currentThread().getName())
time.sleep(2)
print("%s is done." % currentThread().getName())
if __name__ == "__main__":
t = Thread(target=task,name="子线程1") # 改线程名
t.start()
# t.setName("儿子线程1") # 改线程
#
# t.join()
#
# print(t.getName()) # 查看线程名
#
# currentThread().setName("主线程") # 改主线程名,主线程名默认是MainThread
#
# print(t.is_alive()) # 查看一个线程是否存活,返回布尔值
# print("主线程", currentThread().getName())
# t.join()
# print(active_count()) # 拿到活跃线程的数目,2个 ,加上t.join() 就变成了1个了,因为执行完 t.join()后,t 就死了。
print(enumerate()) # 把当前活跃的线程对象拿出来
"""
子线程1 is running.
[<_mainthread started>,
from threading import Thread
import time
def sayhi(name):
time.sleep(2)
print(‘%s say hello‘ %name)
if __name__ == ‘__main__‘:
t = Thread(target=sayhi,args=(‘zixi‘,))
t.start()
t.join()
print(‘主线程‘)
print(t.is_alive())
"""
zixi say hello
主线程
False
"""
下一篇:spring——IOC容器使用
文章标题:(四)多线程之 Thread 对象的其他属性或方法
文章链接:http://soscw.com/index.php/essay/37125.html