我有一个机器人模拟可以多次运行以收集统计数据。特别是,我想用1,2,...,10个机器人运行模拟,每个机器人必须运行30次,所以我想通过main args
传递所需数量的机器人。 / p>
由于模拟是非常占用内存的,我想一个接一个地顺序运行它们(否则很可能是OutOfMemory Exception)。我在Java / Eclipse中工作,在运行配置下,可以指定要传递给程序的参数,就好像shell调用它一样,但我还没有找到任何方法来自动化该过程。
简而言之,我想做的是以下内容:
for i=1 to 10:
for j=1 to 30:
run simulation_instance(i)
程序的每次运行都必须是独立的。我尝试过使用Launch Group Option,但它太可配置了。
你知道其他任何选择吗?
答案 0 :(得分:1)
使用Eclipse EASE在Eclipse中有一种方法。这是非常新的,仍处于孵化期。但它允许你完全按照你描述的那样做。
基本步骤是安装Eclipse EASE,然后编写一些看起来有点像这样的javascript:
// load the Launch module
loadModule("/System/Launch")
// some logic for loops/etc
for (i = 0; i < 30; i++) {
l = launch("name of launch configuration")
while (!prepare.isTerminated()) {
// do something to wait like java.lang.Thread.sleep(1)
}
}
*截至2015年10月,EASE目前处于孵化阶段,直到下一个版本才能访问新的发布模块,您需要从git获取EASE。
有关详细信息,请参阅: