[erlang-questions] The most efficient way to make sure a remote process is alive
Fri Jul 30 00:11:41 CEST 2010
Agreed on that count but I don't have that option. is_process_alive is nice but only for local processes. I was thinking the function would use that first to determine if the process is alive and local, if that fails then some more time consuming check would be needed. I can use node/1 to figure out what node it is on and then check to see if that node is within nodes() and if it is not, then I know the process is dead. Provided that all those checks pass though then what am I left with - needing to do an rpc call on is_process_alive? Any clever ideas, some interface I don't know of?
On 7/29/10 11:46 AM, "Paul Fisher" <> wrote:
The best way i have found is to create a relay process locally, that monitors the remote one, forwards messages, and exits on DOWN. Then u can use erlang:is_process_alive/1 on the local one. Still a race when it is dying, but that is there for local processes too.
On Jul 29, 2010, at 11:22 AM, Logan, Martin wrote:
> I am looking for the absolute most efficient way to make sure a process, referenced by a pid I have, is alive. The process my pid references could of course be local or remote. There are lots of ways but I want the most efficient and I can't assume any application level code - this must be generic. Thoughts?
More information about the erlang-questions