Предположим, у меня есть три Актера, которые общаются друг с другом: ActorControl, ActorA, ActorB.Аккулярный вопрос акковских актеров
ActorA и ActorB общаются с ActorControl. Сообщения, которые они получают, в основном разные, но у них также одно сообщение X. Когда они получают X, им нужно выполнить функцию Y.
Чтобы избежать дублирования кода, я вынул функцию Y для объекта пакета, называемого общим.
В этом случае может случиться так, что как ActorA, так и ActorB называют common.Y в одно и то же время.
Мой вопрос заключается в том, что я саботирую актерский параллелизм?
Если они не были чистыми, было ли различие, если я использую две функции с одним и тем же кодом или если я использую одну «общую» функцию? – 2013-03-24 10:18:52
@tzofia Да, у вас могут быть проблемы, если они не чисты, но есть несколько возможных исправлений. Если вы предоставите дополнительную информацию, я (или кто-то другой) может предоставить решение вашей проблемы. – paradigmatic
Можете ли вы привести пример для случая, что будет разница между использованием одной функции или двух равных функций (когда функция не чиста ..)? Я не могу понять, почему будет иначе ... – 2013-03-24 10:25:09