python获取当前线程数量_python threading.active_count() 用来显示当前存活的线程数量…

  • Post author:
  • Post category:python


在pycharm导入 import threading

直接打印 print(threading.active_count()) 结果是1, 因为当前只有一个主线程, 那些已经死去的线程和实例化了线程对象, 但是没有start()启动的线程不会被计算在内.

threading.active_count() 显示的线程数量和 len(threading.enumerate()) 的返回值是一样的.

len(threading.enumerate()) 是用来计算当前程序枚举出来的线程对象列表的对象数量

创建一个子线程

先定义个函数 def t_1():

然后睡眠10秒, 如果不对子线程进行延迟, 可能会在没捕捉到线程时, 它就结束了

实例化一个进程对象 t1 = threading.Thread(target=t_one)

启动进程 t1.start()

此时再打印threading.active_count() 和 len(threading.enumerate()) 的结果都是2

import threading

import time

def t_1():

time.sleep(10)

# pass

t1 = threading.Thread(target=t_1)

t1.start()

print(threading.active_count(), len(threading.enumerate()), threading.enumerate())