- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在对一些 Abaqus 模拟进行参数化扫描,因此我正在使用 waitForCompletion()
防止脚本过早运行的功能。然而,有时参数组合会导致模拟在扫描中的一个或两个参数上挂起大约半小时到一个小时,而大多数参数组合只需要大约 10 分钟。我不需要所有的数据点,所以我宁愿牺牲一两个结果来支持更多的模拟。因此我尝试使用 waitForCompletion(timeout)
如文档所示 here .但它不起作用 - 它最终就像一个不确定的 waitForCompletion
,无论我将等待时间设置得有多低。我正在使用 Abaqus 2017,我想知道是否还有其他人使用过此功能,如果有,如何使用?
虽然我可以使用一种解决方法,例如添加自定义超时函数并使用 kill()
在工作中发挥作用,我更喜欢使用 Abaqus API 的内置功能,因此非常感谢任何帮助!
最佳答案
好像是从某个版本开始timeOut
从此方法中删除了可选参数:比较 v6.7 文档中的“脚本引用手册”条目和 v6.14 .
您有几个选择:
my_abaqus_script.023
模拟期间文件仍然存在:import os, time
timeOut = 600
total_time = 60
time.sleep(60)
# whait untill the the job is completed
while os.path.isfile('my_job_name.023') == True:
if total_time > timeOut:
my_job.kill()
total_time += 60
time.sleep(60)
subprocess
启 Action 业Note: don't use
interactive
keyword in your command because it blocks the execution of the script while the simulation process is active.
import subprocess, os, time
my_cmd = 'abaqus job=my_abaqus_script analysis cpus=1'
proc = subprocess.Popen(
my_cmd,
cwd=my_working_dir,
stdout='my_study.log',
stderr='my_study.err',
shell=True
)
poll()
的子进程的返回码(另见 returncode
):timeOut = 600
total_time = 60
time.sleep(60)
# whait untill the the job is completed
while proc.poll() is None:
if total_time > timeOut:
proc.terminate()
total_time += 60
time.sleep(60)
wait()
达到超时时间timeOut = 600
try:
proc.wait(timeOut)
except subprocess.TimeoutExpired:
print('TimeOut reached!')
Note: I know that
terminate()
andwait()
methods should work in theory but I haven't tried this solution myself. So maybe there will be some additional complications (like looking for all children processes created by Abaqus usingpsutil.Process(proc.pid)
)
关于abaqus - 超时后,Abaqus API 中的 waitForCompletion(timeout) 实际上并没有终止作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65670445/
我目前使用的是 hadoop 2.7.2 我想知道 org.apache.hadoop.mapreduce.job 类 Job 中是否有另一种方法 可以替代方法 waitForCompletion()
好吧,这个让我觉得自己像个彻头彻尾的白痴。 我的游戏中有一种方法,旨在通过一次弹出一个字母来为文本框中的文本设置动画。在我的 DDTextBox 类中,有一个名为 animateText 的动画方法。
我正在使用 Swift2 开发一些 SpriteKit 游戏。我有一个2部分的音频句子(两部分都是根据实际游戏情况计算的),我想在第1部分完成后播放第2部分。 这两行声音立即同时播放 self.run
我正在对一些 Abaqus 模拟进行参数化扫描,因此我正在使用 waitForCompletion()防止脚本过早运行的功能。然而,有时参数组合会导致模拟在扫描中的一个或两个参数上挂起大约半小时到一个
我已经阅读了文档,所以我知道其中的区别。 但我的问题是,如果我想在集群上并行运行多个 Hadoop 作业,使用 .submit 而不是 .waitForComplete 是否有任何风险? 我主要使用
当两个节点发生冲突时,我试图删除重复播放的 MP3。 SKAction* gameBeat = [SKAction playSoundFileNamed:@"gameBeat.mp3" waitFor
我是一名优秀的程序员,十分优秀!