簡體   English   中英

如何監控python中的線程?

[英]How to monitor a thread in python?

我有一個在我的 django 應用程序的線程中運行的 kafka 使用者,我想在該線程上應用一些監視和警報。 那么我如何添加線程監控(檢查狀態是活的還是死的),如果線程死了則需要發出警報。

我嘗試通過創建每 10 分鍾運行一次並調用 thread.is_alive() 方法的調度程序來進行監控。 但問題是調度程序在不同的進程中運行,無法訪問主進程的線程。 那么我該如何解決呢?

要在 Python 中監視線程,可以使用 threading 模塊,它是 Python 中的一個內置模塊,提供了許多用於處理線程的函數。 以下是如何使用線程模塊監視線程的示例:

import threading

def my_function():

  my_thread = threading.Thread(target=my_function)

  my_thread.start()
   
  if my_thread.is_alive():
     # Do something

threading 模塊提供了許多可用於監視和控制線程的其他函數和方法,例如 join()、isDaemon() 和 setDaemon()。 有關更多信息,您可以閱讀線程模塊的官方 Python 文檔: https ://docs.python.org/3/library/threading.html。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM