当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python threading enumerate()用法及代码示例


Python threading.enumerate() 方法

enumerate() 是 Python 中线程模块的内置方法。它用于返回当前处于活动状态的所有 Thread 类对象的列表。它还包括守护线程、主线程和由 current_thread() 创建的虚拟线程对象。它不计算已终止或尚未启动的线程。

模块:

    import threading

用法:

    enumerate()

参数:

  • None

返回值:

这个方法的返回类型是<class 'list'>,它返回当前活动的 Thread 类对象的列表。

例:

# Python program to explain the use of 
# enumerate()  method in the Threading Module

import time
import threading

def thread_1(i):
    time.sleep(5)
    print("Threads alive when thread_1 executes:")
    print(*threading.enumerate(), sep = "\n")
        
    print()

def thread_2(i):
    print("Threads alive when thread_2 executes")
    print(*threading.enumerate(), sep = "\n")
    print()
    
def thread_3(i):
    time.sleep(4)
    
    
def thread_4(i):
    time.sleep(1)
    print("Threads alive when thread_4 executes")
    print(*threading.enumerate(), sep = "\n")
    print()

# Creating sample threads 
thread1 = threading.Thread(target=thread_1, args=(10,))
thread2 = threading.Thread(target=thread_2, args=(20,))
thread3 = threading.Thread(target=thread_3, args=(30,))
thread4 = threading.Thread(target=thread_4, args=(50,))

print("Threads alive in the starting:", threading.enumerate())
print()

# Starting the threads
thread1.start()
thread2.start()
thread3.start()
thread4.start()

输出

Threads alive in the starting:[<_MainThread(MainThread, started 139862202693376)>]

Threads alive when thread_2 executes
<_MainThread(MainThread, started 139862202693376)>
<Thread(Thread-1, started 139862176597760)>
<Thread(Thread-2, started 139862168205056)>

Threads alive when thread_4 executes
<_MainThread(MainThread, stopped 139862202693376)>
<Thread(Thread-1, started 139862176597760)>
<Thread(Thread-3, started 139862159812352)>
<Thread(Thread-4, started 139862168205056)>

Threads alive when thread_1 executes:
<_MainThread(MainThread, stopped 139862202693376)>
<Thread(Thread-1, started 139862176597760)>


相关用法


注:本文由纯净天空筛选整理自 Python threading Module | enumerate() Method with Example。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。