Проект GPars предлагает разработчикам новые интуитивно понятные и безопасные способы одновременной, асинхронной и распределенной обработки задач Java или Groovy с использованием мощи платформы Java и гибкости языка Groovy.
1 ответ

Java/GPars - мой пул потоков, кажется, "забит"

Что я делаю: я просматриваю таблицу компаний в базе данных... у каждой компании есть текст description поле, и внутри этого поля может быть несколько гиперссылок (редко больше 4). Я хочу протестировать эти ссылки, используя curlдля "плохого" ответа …
22 апр '18 в 08:37
2 ответа

GPars является частью Groovy, но не входит в документацию по API? Почему я не могу импортировать?

http://www.gpars.org/guide/guide/gettingStarted.html Это говорит о том, что GPars был включен в Groovy. Если так, почему я не могу найти это в документации API для Groovy? Почему мои операторы импорта не работают? Я вижу библиотеку в моем Groovy ди…
15 янв '16 в 14:41
2 ответа

Как ждать выполнения задач классом GPars Agent?

В настоящее время я использую класс агента GPars для обработки типичного сценария корзины покупок. У меня есть ситуация, когда мне нужно дождаться завершения задач addtocart, minicart, прежде чем задача viewcart вернет ответ. Вызов webservice возвра…
08 апр '14 в 04:35
2 ответа

Параллелизм данных с GPars

Я нашел этот пример здесь Параллелизм данных GParsPool.withPool() { Closure longLastingCalculation = {calculate()} Closure fastCalculation = longLastingCalculation.async() Future result=fastCalculation() //do stuff while calculation performs … print…
25 янв '13 в 22:20
0 ответов

Что означает слово "петля" в примере актера GPars?

В следующем примере HelloWorld GPars у нас есть слово loop: def decryptor = actor { loop { react { message -> if (message instanceof String) reply message.reverse() else stop() } } } def console = actor { decryptor.send 'lellarap si yvoorG' react…
10 дек '15 в 15:28
1 ответ

Как создать заводного актера, который сохраняет исполнение, пока не остановится

Я хочу создать актера, который продолжает выполнять задачу, затем его можно остановить внешним вызовом, чтобы остановить, но он был совершенно заблокирован. Актер должен выглядеть следующим образом myActor = actor { loop { react { message -> if(m…
29 июл '14 в 14:56
0 ответов

Параллельные запросы с HtmlUnit

Вот мой код: def search = {item-> def url = "http://localhost:8080/search/"+item println 'url='+ url page = webClient.getPage(url); println 'pageURL=' + page.url } GParsPool.withPool(5) { searchList.each {item-> search.callAsync(item) } } Это …
1 ответ

Почему GPars runForkJoin работает медленно, даже когда нет forkOffChild()?

Это последовательная версия: void f(long n) { for (int i=1; i<n-1; i++) { // do nothing } } List result = [] (1..99999).each { f(it) result << it } Выполнение кода занимает несколько секунд. void f(long n) { for (int i=1; i<n-1; i++) { /…
17 май '14 в 12:16
1 ответ

Потоки Gpars.withPool в конечном итоге перестают выполняться после многократного повторения

Пытался выполнить параллельные операции с Gpars. Gpars.withPool(6) { someList.eachParallel { println "${Thread.currentThread}" } } Изначально похоже на работу Thread[ForkJoinPool-1-worker-1,5,main] Thread[ForkJoinPool-1-worker-6,5,main] Thread[ForkJ…
05 окт '16 в 13:15
2 ответа

Groovy - GPars - Активный объект - Активный метод, который возвращает значение

В Groovy мне нужно реализовать экземпляр ActiveObject с именем MyCounter чтобы следующий код прошел: final MyCounter counter = new MyCounter() counter.incrementBy 10 counter.incrementBy 20 counter.update 'Hello' assert 35 == counter.value Я пришел с…
28 ноя '12 в 17:48
1 ответ

Обработка gpars dataflowQueues или конвейеры, похоже, запускаются только по запросу df.val

Нужна помощь. Глядя на потоки данных / конвейеры Gpars, но что-то я не понимаю если вы посмотрите на пример ниже (я сделал это с операторами, трубопроводами, chainWith и столкнулся с той же проблемой). В этом примере я использовал задачи, но с таким…
13 янв '17 в 23:49
1 ответ

Параллельно с withPool

Я нашел пример того, как использовать withPool, Он говорит, что мне просто нужно добавить слово Parallel к методам Groovy, как collect, find, eachположить его в withPool и он выполняет код параллельно. import static groovyx.gpars.GParsPool.withPool …
20 янв '13 в 19:25
1 ответ

Groovy XmlSlurper с параллельной работой

Я анализирую некоторые RSS-канал RSS и необходимо расширить некоторые URL-адреса в поле описания. Теперь мой код написан как items.collect { it.description = FullText.expand(it.description) return it } В этом случае URL-адреса внутри запрашиваются о…
15 авг '16 в 09:05
1 ответ

Параллельный заводной скрипт (в Jira через Scriptrunner)

Мне нужно распараллелить мой скрипт (он создает несколько подзадач) в Jira ServiceDesk, который запускается через ScriptRunner. Мне нужно найти способ параллельного создания задач, потому что, когда SomeUser создает задачу, требуется много времени д…
31 янв '19 в 14:58
2 ответа

Как узнать с помощью GPars, что все потоки закончились, когда выдается исключение?

В случае, когда поток выбрасывает исключение, как я могу ждать, пока все потоки, которые не выдавали исключение, не закончатся (чтобы пользователь не запустился снова, пока все не остановилось)? Я использую GPars несколькими различными способами, по…
07 дек '12 в 21:36
2 ответа

Обрабатывать огромное количество данных с помощью grails и gpars

У меня есть приложение Grails, которое ежедневно выполняет работу в полночь. В моем примере приложения у меня есть 10000 Person записать и сделать следующее в кварцевом задании: package threading import static grails.async.Promises.task import stati…
1 ответ

Как я могу заставить IntelliJ IDEA распознавать GPars DSL?

Согласно Руководству пользователя GPars, IntelliJ IDEA должен распознавать DSL GPars прямо из коробки, как только банка GPars добавлена ​​в проект. Начиная с Groovy 1.8, GPars теперь включен в дистрибутив Groovy, но добавление этого аспекта в проект…
15 июн '12 в 19:56
1 ответ

Пример Fork/Join с GPars

Я нашел пример для fork/join в GPars здесь: Fork / Join import static groovyx.gpars.GParsPool.runForkJoin import static groovyx.gpars.GParsPool.withPool withPool() { println """Number of files: ${ runForkJoin(new File("./src")) {file -> long coun…
27 янв '13 в 03:09
1 ответ

Сбор результатов асинхронно от параллельного исполнителя gpars

У нас есть некоторый код на Java с использованием ThreadPoolExecutor и CompletionService. Задачи представлены большими партиями в пул; результаты отправляются в службу завершения, где мы собираем выполненные задачи, когда они доступны, не дожидаясь …
13 янв '14 в 05:53
1 ответ

Многопоточный анализатор веб-сайтов и проблемы с памятью

Привет. Я кодирую синтаксический анализатор веб-сайта, который должен быть быстрым и, следовательно, многопоточным. Внешние библиотеки, которые я использую: HTTP-клиент apache, Jsoup (для анализа HTML) и GPars (для потоков, управляемых сообщениями).…