當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。