背景(可以跳过下面质疑...)的Java:等待功能了n秒,如果没有完整的重试
目前与乐高机器人机器人和API的ICommand(HTTP工作: //lejos.sourceforge.net/p_technologies/nxt/icommand/api/index.html)。
在使用其中一种电机控制方法时遇到了一些麻烦。该方法通过给定的角度旋转电机:
Motor.A.rotateTo(target);
此功能不会返回,直到电机已经完成运动。这很好,但有时电机无法停止并将无限期地继续,从而停止程序。
问题
反正我有可以使程序等待长达ñ秒的方法Motor.A.rotateTo(target);
返回。然后如果在那段时间还没有返回,那么再次调用该方法。 (如果这可能会成功,直到它会更好。)
感谢您的阅读,任何帮助将不胜感激。
问候, 乔
编辑:从Motor.A.rotate(target);
更正为Motor.A.rotateTo(target);
可能重复是否可以在规定时间内停止功能的执行在Java?](http://stackoverflow.com/questions/3183722/is-it-possible-to-stop-a-functions-execution-within-a-specified-time-in-java) – Perception 2012-01-18 18:04:26
但不会在执行过程中停止方法会导致对象中的状态不一致? – Tudor 2012-01-18 18:12:57
@Tudor啊,你会的。我的意思是写'Motor.A.rotateTo(目标);'对不起我的错误!马达有转速计,它们记录它们转过的距离(正向顺时针,负向逆时针,1转速= 1度)。所以我可以简单地重新调用这个方法,它会旋转,直到它达到目标转速计数。 – Leech 2012-01-18 18:47:50