Существует класс Algorithm
, который имеет метод runAlgorithm
. В настоящее время он выполняет некоторое предопределенное количество итераций, например. 100 итераций, после чего он останавливается. Этот метод вызывается из класса Test
.Запуск метода в течение заданного количества минут
Теперь мне нужно обновить свой код, чтобы иметь возможность запускать метод runAlgorithm
в течение заданного количества минут, например. 5 минут, после чего его нужно остановить.
В результате я должен иметь возможность выбирать критерий остановки, то есть время или количество итераций: algorithm.runAlgorithm('time',5)
или algorithm.runAlgorithm('iterations',100)
.
Я не уверен, как это сделать. Должен ли класс Algorithm
быть реализован как Runnable
? Или мне нужно создать таймер в классе Test
? Руководство будет высоко оценено.
public class Test {
public static void main(String[] args)
{
init();
Algorithm algorithm = new Algorithm();
// 5 minutes is a stopping criterion for the algorithm
Solution solution = algorithm.runAlgorithm('time',5);
System.out.println(solution);
}
}
@ syb0rg: Я хочу, чтобы метод runAlgorithm запустить определенное количество миллисекунд. Итак, время как критерий остановки для алгоритма. Например, если я укажу 5 минут в качестве критерия остановки, алгоритм должен быть запущен 5 минут. Через 5 минут (это может означать, например, 133 итерации) он должен предоставить решения. –