GenServer.cast, а когда send? У меня коллега спросил и мне сложно ответить на 100% точно почему один, а не другой.
Из того, что мне приходит в голову - в тестах assert_receive принимает только обычные сообщения - приходится использовать cast send, чтобы протестировать. И Process.send_after отправляет обычное сообщение, приходится использовать handle_info для этого.
Есть еще идеи?
gen_server:case(well_known_name, MyMessage) case whereis(well_known_name) of undefined -> ok; Pid -> Pid ! MyMessage end
Обсуждают сегодня