Вопросы по теме 'gpars'

GPars с Groovy, когда требуется явная синхронизация с collectParallel()?
Предположим следующий параллельный процесс в Groovy/Gpars.... def result GParsPool.withPool(5){ result = idList.collectParallel{processItem(it)} } Если result — это просто список массивов, и при условии, что ни один поток не обращается...
1800 просмотров

Почему переменные DataFlow могут быть назначены только один раз
В эти дни я изучаю библиотеку GPars (Groovy Parallel System) и наткнулся на переменные DataFlow. В документации говорится, что переменные потока данных могут быть назначены только один раз. Однако я не смог найти причину этого ограничения. Может...
377 просмотров
schedule 10.08.2022

Асинхронные функции GPAR и передача ссылок, которые обновляются другим потоком
Я использую асинхронные функции GPAR для запуска процесса при анализе каждой строки в файле. Я вижу какое-то странное поведение, которое заставляет меня задаться вопросом, есть ли у меня проблема с безопасностью потоков. Допустим, у меня есть...
245 просмотров
schedule 11.02.2023

Groovy/Grails GPARS: как выполнить 2 параллельных вычисления?
Я новичок в библиотеке GPARS и сейчас внедряю ее в наше программное обеспечение. Для меня не проблема использовать его вместо обычных groovy-методов, таких как [..].each{..} -> [..].eachParallel{..} Но мне интересно, как...
3324 просмотров
schedule 12.11.2022

GPars - правильный способ досрочного прекращения параллельной коллекции
Каков наилучший способ завершить параллельную сборку (либо в случае исключения, выданного одним из потоков, либо в случае прерывания, инициированного пользователем)? В любом случае я мог бы легко установить какой-нибудь флаг и просто проверить его...
1024 просмотров
schedule 12.05.2023

Grails, GPars и сохраняемость данных
Что-то не сливается. Упрощенный пример того, что происходит: def testDemo() { def person = new Person(...) person.save(flush: true) println "Number of people after save: " + Person.all.size() def dummyList = [1, 2, 3, 4, 5]...
2253 просмотров
schedule 26.07.2023

Сравните Java и GPars
Я пытаюсь найти сопоставимый фрагмент кода для Java и GPars, чтобы визуализировать, насколько проще GPars. Одинаково ли работает следующий код в обоих случаях? Я имею в виду не только вывод, но и то, что происходит «внутри». Или есть способ...
502 просмотров
schedule 22.03.2022

Исключение актера
Я просто хочу отправить несколько сообщений между двумя участниками в Groovy. Я получаю первые сообщения abc , но затем получаю следующее исключение: Возникло исключение в потоке актера. Поток актера 1 groovy.lang.MissingPropertyException: нет...
147 просмотров
schedule 03.06.2023

Параллелизм данных с помощью GPars
Я нашел этот пример здесь Параллелизм данных GParsPool.withPool() { Closure longLastingCalculation = {calculate()} Closure fastCalculation = longLastingCalculation.async() Future result=fastCalculation() //do stuff while...
256 просмотров

Как свернуть в многоуровневую карту с помощью gpars и map reduce
У меня есть коллекция карт, которая выглядит примерно так: def list = [ [key1: 'ABC', key2: 3, value: 1.01], [key1: 'ABC', key2: 4, value: 1.02], [key1: 'ABC', key2: 4, value: 1.03], [key1: 'DEF', key2: 3, value: 1.04]] Я...
920 просмотров
schedule 14.04.2023

Gpars withExistingPool Ошибка jsr166y.ForkJoinPool не найден
Я обновил «org.codehaus.gpars:gpars:1.0.0» до «org.codehaus.gpars:gpars:1.1.0». Мой код отлично работает в версии 1.0.0, но в версии 1.1.0 я больше не могу найти jsr166y.ForkJoinPool. Как мне получить правильный ForkJoinPool? Код, который я...
1369 просмотров

Архитектура для высокоасинхронных событий, которые приводят к обновлениям базы данных
Сначала я спросил Обработка асинхронных обратных вызовов с поддержкой базы данных в Grails , но я С тех пор я провел много исследований, поэтому я задаю более острый вопрос ... Совсем недавно я пытался использовать Events API в плагине ядра...
117 просмотров
schedule 28.08.2022

Как дождаться выполнения задач классом агента GPars?
В настоящее время я использую класс агента GPars для обработки типичного сценария корзины покупок. У меня есть ситуация, когда мне нужно дождаться завершения задач addtocart, minicart, прежде чем задача viewcart вернет ответ. Вызов веб-службы...
142 просмотров
schedule 25.05.2022

Почему 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)...
198 просмотров
schedule 28.06.2023

Есть ли способ запустить отложенную или запланированную задачу с помощью GPars?
Я создаю свое параллельное приложение поверх библиотеки GPars. Он содержит пул потоков под капотом, поэтому я хотел бы решать все задачи, связанные с параллелизмом, с помощью этого пула. Мне нужно запустить задачу с определенной задержкой...
386 просмотров
schedule 16.04.2023

Как проще всего запустить метод асинхронно и увидеть его состояние?
Я хотел бы провести одну-единственную длительную операцию и иметь возможность видеть следующие ее этапы: 1) еще не запускался 2) running (бег) 3) закончил нормально 4) закончено за исключением Я написал приведенный ниже код, который...
112 просмотров
schedule 26.03.2023

Groovy XmlSlurper с параллельной операцией
Я анализирую некоторые rss xml-каналы, и мне нужно расширить некоторые URL-адреса в поле описания. Теперь мой код написан как items.collect { it.description = FullText.expand(it.description) return it } В этом случае URL-адреса...
88 просмотров
schedule 01.02.2023

Параллельная версия AtomicBoolean не работает, но версия агента работает
У меня есть метод, в котором я пытался распараллелить вычисление с помощью GPARS и вычислить совокупный логический результат «И» для вызовов. Этот метод обернут как @ActiveObject, который доставит результат в виде потока данных — в приведенном ниже...
196 просмотров
schedule 03.04.2024

eachParallel() генерирует исключение groovy.lang.MissingMethodException при использовании GPars
В настоящее время я пытаюсь использовать GPars для одновременного прохождения системы каталогов в режиме DFS. Это то, что у меня есть до сих пор: ArrayList<String> visited = Collections.synchronizedList(new ArrayList<String>()) void...
195 просмотров
schedule 21.09.2022