Как сделать одновременные звонки на каждый объект списка? - PullRequest
0 голосов
/ 15 января 2019

У меня есть список, содержащий 3 объекта, и я хочу одновременно вызывать метод для каждого объекта

Обычно я бы циклически проходил по каждому объекту в моем списке и вызывал бы метод для каждого объекта.

for(Object object : myList){
     object.someMethod();
}

Это вызовет someMethod() для каждого объекта из myList один за другим.Могу ли я вызвать someMethod() для каждого объекта одновременно?

1 Ответ

0 голосов
/ 15 января 2019

Да, вы можете вызывать someMethod параллельно несколькими способами

Использование параллельного потока

 myList.parallelStream().forEach(object -> object. someMethod())

Использование службы Executor

ExecutorService executorService = Executors.newFixedThreadPool(myList.size());
 for(Object object : myList){
      executorService.submit(object::someMethod)
 }
  executorService.shutdown();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...