Мне удалось выяснить, что я могу разбить список на более мелкие списки с помощью секционирования.
/>Согласно этой статье, кажется, что класс Partition является самым быстрым: разделите список на списки размером n в Java 8.
После того, как я разделил их на более мелкие списки, я хотел бы используйте эти ссылки и одновременно извлекайте из них данные. Я мог бы использовать один список, а затем:
Код: Выделить всё
linkList.parallelStream().forEach(link -> {
ScrapeLink(link);});
Код: Выделить всё
System.setProperty("java.util.concurrent.ForkJoinPool.common.parallelism", "5");
Итак, когда у меня есть такой список:
Код: Выделить всё
final List links = Arrays.asList("link1","link2","link3","link4","link5","link6","link7");
System.out.println(Partition.ofSize(numbers, 3));
Но как мне поступить тогда, когда я хочу обрабатывать эти небольшие списки ссылок в нескольких потоках одновременно?
Моей мыслью было использовать Java 8 Streams. Но может быть, это лучший способ?
Подробнее здесь: https://stackoverflow.com/questions/696 ... le-threads