LINUX.ORG.RU

История изменений

Исправление ergo, (текущая версия) :

это уже на уровне логики приложения. я бы на ошибку монитора просто делал a.SendAfter(a.PID(), "init", time.Second) с некоторым лимитом на попытку такого инита.

Ждать в factorySub типа for {…}

а вот подобные конструкции в акторах - прям очень не рекомендуется. обработка сообщений должна быть быстрой, ну или ожидаемо продолжительной, но в рамках, позволяющих вовремя обрабатывать сообщения из очереди. если заблокируешь колбек каким-то ожиданием, то очередь этого актора будет расти с приходом новых сообщений

Исходная версия ergo, :

это уже на уровне логики приложения. я бы на ошибку монитора просто делал a.SendAfter(a.PID(), "init", time.Second) с некоторым лимитом на попытку такого инита.

Ждать в factorySub типа for {…}

а вот подобные конструкции в акторах - прям очень не рекомендуется. обработка сообщений должна быть быстрой, ну или ожидаемо продолжительной, но в рамках, позволяющих вовремя обрабатывать сообщения из очереди. если заблокируешь колбек каким-то ожиданием, то он очередь этого актора будет расти с приходом новых сообщений