Ну, Эрланг (afaik) не позволяет перемещать процессы (по крайней мере, PID привязан к узлу). Если вы хотите сделать это для конкретной функции, то вы можете запустить процесс на другом узле (например, с помощью rpc:call
и функции-оболочки) и передать ему состояние.
Конечно, это работает, если вы сохраняете свое состояние, а не в словаре процесса. И, конечно, PID нового процесса будет другим, но вы можете, например, оставить свой существующий процесс зависшим и переслать сообщения новому.