我正在尝试将先前在C++
中的项目重新编码为Python
。并且它的项目涉及大量的P2P网络,因此,测试它的最佳方法是运行代码两次,因此他们将相互连接并告诉我他们工作正常。
所以,我认为最简单的方法就是这样:
def doubleDebug():
import subprocess
cmd = 'WMIC PROCESS get Caption,Commandline,Processid'
proc = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE)
numofexecutions=0
for line in proc.stdout:
if line[:10] == b'python.exe':
numofexecutions+=1
if numofexecutions <= 2:
os.system(r"C:\Python34\python.exe C:\Users\Alex\REMOTE\PythonProjects\main.py")
return numofexecutions
首先它会检查执行的python.exe
的数量,如果低于1,则再次运行它。我知道,这是一种可怕的做法,但它仅用于调试目的,很快就会删除。
问题在于它不起作用。它会正确检查执行次数,我发现taskmgr中还有一个python.exe
,但它并没有真正执行任何代码。
实现这一目标的简单方法是什么?我使用的是Windows x64
,我的IDE
是pyCharm
。