# -*- coding:utf-8 -*-
import threading
import psutil
import os
import time
'''通過 threading.thread.is_active 判斷執行緒是否退出。
此方法可以用來對程式進行監聽,當程式出現異常退出,重啟程式。
'''class mythread(threading.thread):
def __init__(self, threadid, name, func, param=none):
threading.thread.__init__(self)
self.threadid = threadid
self.name = name
self.func = func
self.param = param
def run(self):
lock = threading.lock()
if lock.acquire(): # 加鎖
if self.param is none:
self.func() # 呼叫傳進來的函式
else:
self.func(self.param)
print(self.name, time.ctime)
lock.release() # 釋放鎖
def test_func():
i = 0
while i < 60:
i += 1
print('i : {}'.format(str(i)))
time.sleep(1)
def check_threading(t1):
'''檢測t1 執行緒是否退出
:param t1:
:return:
'''while true:
print(threading.thread.is_alive(t1))
if not threading.thread.is_alive(t1): # 如果執行緒退出, 重新建立乙個程序
t1 = mythread(1, 'test_func', test_func)
t1.start()
t1.join()
time.sleep(60)
thread_list =
t1 = mythread(1, 'test_func', test_func)
for t in thread_list:
t.start()
for t in thread_list:
t.join()
C 軟體監控外部程式執行狀態
需要外掛程式乙個程式,用於監控另乙個程式執行狀態,一旦檢測到另一程式關閉,就觸發乙個事件做其他處理。引用的類 using system.diagnostics 引入process 類 宣告private process myprocesses 主要處理部分,該段 可放在定時器中迴圈檢測監控的程式是否...
C 軟體監控外部程式執行狀態
需要外掛程式乙個程式,用於監控另乙個程式執行狀態,一旦檢測到另一程式關閉,就觸發乙個事件做其他處理。引用的類 1usingsystem.diagnostics 引入process 類宣告1 privateprocess myprocesses 主要處理部分,該段 可放在定時器中迴圈檢測監控的程式是否...
C 軟體監控外部程式執行狀態
需要外掛程式乙個程式,用於監控另乙個程式執行狀態,一旦檢測到另一程式關閉,就觸發乙個事件做其他處理。引用的類 using system.diagnostics 引入process 類 宣告private process myprocesses 主要處理部分,該段 可放在定時器中迴圈檢測監控的程式是否...