我正在通过Python运行Nastran模拟。
nastran=subprocess.run([nastrandir,fn,"parallel = 4","old=no",outputarg])
这些模拟往往会在没有反馈的情况下运行相当长的一段时间,因此,我正在尝试自动读取输出文件以获取相关数据并进行打印。
为此,我需要在子流程运行时中运行一些代码。但是,这似乎不起作用。作为一个简单的测试,我将此代码编写在subprocess
命令下面:
while nastran.poll() is None:
print("Still working \r")
time.sleep(delay)
print("Still working. \r")
time.sleep(delay)
print("Still working.. \r")
time.sleep(delay)
print("Still working...\r")
time.sleep(delay)
[不幸的是,代码似乎卡在subprocess
命令上,等待它完成,这时nastran
成为CompletedProcess
类,无法再轮询,这是我收到的错误。] >
关于如何让Python正确轮询Nastran子进程的任何想法?
我正在通过Python运行Nastran模拟。 nastran = subprocess.run([nastrandir,fn,“ parallel = 4”,“ old = no”,outputarg])这些模拟往往会运行很长时间而没有反馈,因此我...