Size: a a a

2021 June 11

HK

Henry Kovalevsky in F# Chat
Если послать Get, то стейт становится пустым.
https://github.com/Horusiath/Akkling/blob/master/src/Akkling/ActorBuilder.fs
источник

AH

Ayrat Hudaygulov in F# Chat
у тебя там проблема с тем что ты думаешь что return делает императивный выход из СЕ.
Присаживайся поудобнее
источник

AH

Ayrat Hudaygulov in F# Chat
Когда ты делаешь return! и он НЕ является последней инструкцией в CE - ты себе отстреливаешь колено.
Ты так и делаешь, у тебя после обработки Add и return в нём есть ещё инструкции после матча

Это означает что твоё обработчкик Add запустит следующий цикл с новым переданным стейтом
Получит там сообщение GET, отдаст ему этот новый стейт и вернёт управление в СТАРЫЙ цикл где ещё не было стейта и выполнение продолжится!
И актор продолжает выполнение СЕ после матча и видит там return! loop [] и продолжает
источник

AH

Ayrat Hudaygulov in F# Chat
фикс элементарный, подвинуть return! loop последний в блок Get
источник

AH

Ayrat Hudaygulov in F# Chat
добавь там вывод в консоль после return! будешь удивлён
источник

HK

Henry Kovalevsky in F# Chat
Понял механизм. Спасибо большое!
источник

DB

Denis Bobrov in F# Chat
А скинь гист мб того что получилось, а то я чет сходу не нагуглил минималистичных примеров на акке
источник

HK

Henry Kovalevsky in F# Chat
Так у них в репозитории набор примеров.
https://github.com/Horusiath/Akkling/tree/master/examples
источник

HK

Henry Kovalevsky in F# Chat
На эту проблему я наткнулся в примере про cluster-nodes-status.
источник

DB

Denis Bobrov in F# Chat
Аа, я чет не заметил что это акклинг
Хорошо спасибо
источник

AK

Alex K in F# Chat
Welcome!
источник

RS

Rustam Sayfutdinov in F# Chat
А комбинация из
task |> Async.AwaitTask |> Async.RunSynchronously

равносильно C# await?
источник

VK

Vladislav Khapin in F# Chat
Нет
источник

VK

Vladislav Khapin in F# Chat
Тред заблочит
источник

AK

Alex K in F# Chat
Вроде же равносильно task.Result
источник

VK

Vladislav Khapin in F# Chat
Да
источник

RS

Rustam Sayfutdinov in F# Chat
А, блин, спасибо
источник
2021 June 12

NN

Nikolay N in F# Chat
Вопрос по поводу практики использования F# и C# в одном Solution

Есть десктопное приложение на C#
Есть бизнес задача бешеное желание попробовать пописать новый относительно независимый функционал на F#

В результате предполагается
C# код => передать POCO классы в dll на F# => что-то там посчитать => вернуть результат

Как я сейчас понимаю, надо будет в F# сделать прослойку с конвертацией C# классов в F# типы и дальше уже можно спокойно работать

Может есть варианты получше? Может в каких-то версиях .net хуже/лучше взаимодействие C# и F# ?
Какие подводные камни стоит ожидать? ( кроме того, что поддержка приложения теперь будет требовать ещё и F# )
источник

SN

Shub Niggurath in F# Chat
Ну вообще-то оно немножко проще, чем ты описываешь
источник

SN

Shub Niggurath in F# Chat
Конвертация как таковая не нужна, оно работает бесшовно
источник