0
Как я могу добавить CyclicBehaviour
, когда handleElapsedTimeout()
(тайм-аут) и начать снова? Это моя задача для школы. Буду очень признателен, если кто-нибудь даст мне совет.Java JADE add Cyclic Behavior
Вот мой код:
package test3;
import jade.core.Agent;
import jade.core.behaviours.CyclicBehaviour;
import jade.core.behaviours.OneShotBehaviour;
import jade.core.behaviours.ParallelBehaviour;
import jade.core.behaviours.TickerBehaviour;
import jade.core.behaviours.WakerBehaviour;
public class test3 extends Agent {
protected void setup(){
ParallelBehaviour pb = new ParallelBehaviour(ParallelBehaviour.WHEN_ANY);
pb.addSubBehaviour(new WakerBehaviour(this,5000){
@Override
protected void handleElapsedTimeout() {
System.out.println("timeout");
myAgent.doDelete();
}
});
/*
pb.addSubBehaviour(new CyclicBehaviour(this){
public void action(){
System.out.println("Cycling");
}
}
);
*/
pb.addSubBehaviour(new TickerBehaviour(this,100){
int random;
@Override
protected void onTick() {
random = (int) (Math.random() * 100);
System.out.println("random number = " + random);
if(random == 5)
{
System.out.println("I found it!");
myAgent.doDelete();
}
}
});
addBehaviour(pb);
}
}
Вы уверены, что используете все правильно? Обычно языки используют английский английский (например, 'behaviour' ->' behavior'). – TylerH
В этом случае (JADE) это поведение. Много раз использовали его. – shirowww