Вопросы по теме 'stm'
Функция проверки Haskell STM возвращает неопределенное значение
Есть ли веская причина, по которой функция check в библиотеке Contol.Concurent.STM имеет тип Bool -> STM a и возвращает в случае успеха undefined , а не тип Bool -> STM () ? То, как это реализовано, средство проверки типов будет...
307 просмотров
schedule
19.06.2022
Контейнер для Haskell TVars
У меня есть игровой сервер, который создает поток для каждого клиента с помощью forkIO. Я хочу, например, поделиться со всеми списком клиентов и списком монстров.
Моя первая идея заключалась в том, чтобы иметь один контейнер TVar для типа данных,...
289 просмотров
schedule
17.01.2023
Можно ли контролировать уровень конкуренции STM?
Есть ли способ узнать, повторяются ли транзакции Clojure STM и с какой скоростью?
250 просмотров
schedule
10.04.2023
Как запустить параллельные вычисления в Haskell?
Если у меня есть функция, которая выполняет четыре очень длинных вычисления и возвращает список с результатом четырех вычислений, но где каждое вычисление не зависит от другого, как вы «распараллеливаете» это в Haskell?
Чтобы лучше объяснить мой...
293 просмотров
schedule
07.04.2022
Haskell STM: как сохранить ThreadID в соответствии с их последовательностью выполнения
В следующей программе число Фибоначчи генерируется из заданного целого числа (сгенерированного случайным образом), и это значение сохраняется в TVar. Поскольку время выполнения для генерации Фибоначчи различно для разных чисел, потоки не будут...
195 просмотров
schedule
27.09.2022
В чем разница между коммутацией и изменением в Clojure?
Я пытаюсь написать очень простой код, который показывает разные результаты между коммутацией и изменением в Clojure. Может ли кто-нибудь создать пример для этой цели?
Чем проще, тем лучше понять разницу.
218 просмотров
schedule
13.01.2023
Как дождаться завершения forM_ при использовании TVar?
Я пишу функцию, в которой я обрабатываю список, используя forM_ , и добавляю результат в список TVar :
import Control.Concurrent.STM
import Control.Concurrent.STM.TVar
import Control.Concurrent (forkIO)
import Control.Monad (forM_)
insert :: a...
186 просмотров
schedule
05.11.2022
Действие Haskell IO в `StateT a STM b`
Я хочу запустить randomIO внутри своего StateT a STM b , но получаю эту ошибку:
Expected type: StateT Session STM Float
Actual type: IO Float
поэтому я пытаюсь выполнить lift из Control.Monad.Trans.Class (реэкспортированного модулем...
88 просмотров
schedule
09.02.2023
Ошибка приведения типов Java Scala-STM при чтении из TArray
У меня есть (неоцененное) задание по программированию, в котором я должен реализовать циклическую очередь с использованием scala-stm из https://nbronson.github.io/scala-stm/ .
У меня есть функция получения:
public E get() {
E item =...
66 просмотров
schedule
28.11.2023