Выполнение метода от 1 до N раз в секунду - PullRequest
0 голосов
/ 01 июня 2019

Давайте рассмотрим следующий пример выполнения:

MyRequest request = new MyRequest(args);
request.execute(params);

Как я могу выполнить выше 1 до n раз (т.е. n=50) в секунду?

Редактировать

Кроме того, если у нас есть i объекты, каждый из которых вызывает n запросов:

for(MyObject obj : objects) {
    // Execute n requests (i.e. in for loop)
}

Как я могу убедиться, что выполнение происходит в течение одной секунды?

1 Ответ

1 голос
/ 01 июня 2019

Чтобы убедиться, что n запросов выполняются за 1 секунду, вам необходимо знать, как долго длится 1 выполнение, чтобы запустить их последовательно, в противном случае вам следует использовать потоки, чтобы запустить их в parralel и запустить их с задержкой, чтобы точно соответствовать 1 секунде

for(int i=0;i<n;i++){
   MyRequest request = new MyRequest(args);
   Thread th=new Thread(()-> request.execute());
   th.start();
   Thread.sleep(1000/n);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...