Size: a a a

Clojure — русскоговорящее сообщество

2021 June 29

ID

Ilya Dubov in Clojure — русскоговорящее сообщество
можно конечно почитать или поставить нехитрый эксперимент (или даже подумать и догадаться), но кто-нибудь из вас же наверняка знает сходу
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
Чтобы тебе не казалось, что тебя никто не услышал, отвечу:
я не знаю.
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
Наверняка заново будет запущен расчёт.
источник

ID

Ilya Dubov in Clojure — русскоговорящее сообщество
а как сделать, чтоб не заново? locking? я немного запутался в богатом инструментарии для многопоточного программирования
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
запили свой собственный memoize. ну да, наверное с каким-то locking'ом.
источник

ID

Ilya Dubov in Clojure — русскоговорящее сообщество
ага
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
пусть мемоизированная функа при самом входе проверяет, запущен ли расчёт на данном наборе данных, если запущен, то поток лочится в ожидании завершения расчёта.
если не запущен, то ставить отметку, что запущен и запустить расчёт.
если расчёт завершён, то вернуть мемоизированное значение
кажется должно сработать.
источник

ID

Ilya Dubov in Clojure — русскоговорящее сообщество
ну это старый добрый паттерн, на джаве, не помню как называется, типа внутри syncronized проверяем если тяжелая штука не нул, отдаем её, если нул - запускаем инициализацию
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
тогда поищи другой способ.
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
В)
источник

ID

Ilya Dubov in Clojure — русскоговорящее сообщество
не, мне норм
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
ну ок.
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
просто у меня аллергия на слово "паттерн из Java"
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
В)
источник

ID

Ilya Dubov in Clojure — русскоговорящее сообщество
я хотел смягчить это словами "старый добрый"
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
не парься. я не обижаюсь
источник

ID

Ilya Dubov in Clojure — русскоговорящее сообщество
да было бы на что
источник

A

Andrey in Clojure — русскоговорящее сообщество
создает atom в замыкании, так что должен быть потокобезопасным
источник

ID

Ilya Dubov in Clojure — русскоговорящее сообщество
почему? вот первый пришел - нет в мапе по нужному ключу значения
источник

ID

Ilya Dubov in Clojure — русскоговорящее сообщество
второй пришёл - тоже нет
источник