commit
c11b43b205
|
|
@ -1,16 +1,8 @@
|
|||
'''
|
||||
Author: SpenserCai
|
||||
Date: 2023-08-24 09:33:45
|
||||
version:
|
||||
LastEditors: SpenserCai
|
||||
LastEditTime: 2023-08-24 22:08:16
|
||||
Description: file content
|
||||
'''
|
||||
import subprocess
|
||||
import threading
|
||||
import os
|
||||
from scripts.base import get_bin_process_path
|
||||
|
||||
# 单列类
|
||||
class ProcessCtrl:
|
||||
__status = False
|
||||
__process = None
|
||||
|
|
@ -24,7 +16,7 @@ class ProcessCtrl:
|
|||
ProcessCtrl.__process = subprocess.Popen(get_bin_process_path(), stdout=subprocess.PIPE, stderr=subprocess.STDOUT, universal_newlines=True)
|
||||
for line in iter(ProcessCtrl.__process.stdout.readline, ""):
|
||||
ProcessCtrl.AllLogData += line
|
||||
# LogData只保留最后10行
|
||||
# Limit LogData to 10 lines
|
||||
#if len(ProcessCtrl.AllLogData.split("\n")) > 10:
|
||||
# ProcessCtrl.LogData = "\n".join(ProcessCtrl.AllLogData.split("\n")[-10:])
|
||||
#else:
|
||||
|
|
@ -33,18 +25,15 @@ class ProcessCtrl:
|
|||
ProcessCtrl.__process = None
|
||||
ProcessCtrl.__status = False
|
||||
|
||||
|
||||
def start():
|
||||
ProcessCtrl.__status = True
|
||||
ProcessCtrl.__thread = threading.Thread(target=ProcessCtrl._start_process)
|
||||
ProcessCtrl.__thread.start()
|
||||
|
||||
def stop():
|
||||
if ProcessCtrl.__process != None:
|
||||
# 发送相当于Ctrl+C的信号
|
||||
ProcessCtrl.__process.send_signal(3)
|
||||
|
||||
if ProcessCtrl.__process is not None:
|
||||
# Terminate the subprocess (Windows compatible)
|
||||
ProcessCtrl.__process.terminate()
|
||||
|
||||
def is_running():
|
||||
return ProcessCtrl.__status
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue