How to get instance of a specific running process in Elixir?
up vote
0
down vote
favorite
In elixir, if I invoke spawn to create a process but didn't store the process instance to a variable, how can I retrieve the instance of that PID again?
I know I can use Process.list() which will return all the processes running in the current node but is there a way to retrieve the instance of a specific PID?
elixir
add a comment |
up vote
0
down vote
favorite
In elixir, if I invoke spawn to create a process but didn't store the process instance to a variable, how can I retrieve the instance of that PID again?
I know I can use Process.list() which will return all the processes running in the current node but is there a way to retrieve the instance of a specific PID?
elixir
1
The easiest way would be to either store the PID for future use, or name the process so you can reference it by that unique name (unique within a given node. Unless you registered globally, then it is unique across the entire erlang network).
– Justin Wood
yesterday
so if I did not name my PID, then there is no way to retrieve it?
– Supui Lam
yesterday
If you know the pid integer values, you can usepid/3
to get the instance. E.g.pid(0, 123, 4)
– Sheharyar
yesterday
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
In elixir, if I invoke spawn to create a process but didn't store the process instance to a variable, how can I retrieve the instance of that PID again?
I know I can use Process.list() which will return all the processes running in the current node but is there a way to retrieve the instance of a specific PID?
elixir
In elixir, if I invoke spawn to create a process but didn't store the process instance to a variable, how can I retrieve the instance of that PID again?
I know I can use Process.list() which will return all the processes running in the current node but is there a way to retrieve the instance of a specific PID?
elixir
elixir
asked yesterday
Supui Lam
33
33
1
The easiest way would be to either store the PID for future use, or name the process so you can reference it by that unique name (unique within a given node. Unless you registered globally, then it is unique across the entire erlang network).
– Justin Wood
yesterday
so if I did not name my PID, then there is no way to retrieve it?
– Supui Lam
yesterday
If you know the pid integer values, you can usepid/3
to get the instance. E.g.pid(0, 123, 4)
– Sheharyar
yesterday
add a comment |
1
The easiest way would be to either store the PID for future use, or name the process so you can reference it by that unique name (unique within a given node. Unless you registered globally, then it is unique across the entire erlang network).
– Justin Wood
yesterday
so if I did not name my PID, then there is no way to retrieve it?
– Supui Lam
yesterday
If you know the pid integer values, you can usepid/3
to get the instance. E.g.pid(0, 123, 4)
– Sheharyar
yesterday
1
1
The easiest way would be to either store the PID for future use, or name the process so you can reference it by that unique name (unique within a given node. Unless you registered globally, then it is unique across the entire erlang network).
– Justin Wood
yesterday
The easiest way would be to either store the PID for future use, or name the process so you can reference it by that unique name (unique within a given node. Unless you registered globally, then it is unique across the entire erlang network).
– Justin Wood
yesterday
so if I did not name my PID, then there is no way to retrieve it?
– Supui Lam
yesterday
so if I did not name my PID, then there is no way to retrieve it?
– Supui Lam
yesterday
If you know the pid integer values, you can use
pid/3
to get the instance. E.g. pid(0, 123, 4)
– Sheharyar
yesterday
If you know the pid integer values, you can use
pid/3
to get the instance. E.g. pid(0, 123, 4)
– Sheharyar
yesterday
add a comment |
1 Answer
1
active
oldest
votes
up vote
1
down vote
The easiest way would be set a name for the process and retrieve it using Process.whereis/1.
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
1
down vote
The easiest way would be set a name for the process and retrieve it using Process.whereis/1.
add a comment |
up vote
1
down vote
The easiest way would be set a name for the process and retrieve it using Process.whereis/1.
add a comment |
up vote
1
down vote
up vote
1
down vote
The easiest way would be set a name for the process and retrieve it using Process.whereis/1.
The easiest way would be set a name for the process and retrieve it using Process.whereis/1.
answered yesterday
Marcos Tapajós
1214
1214
add a comment |
add a comment |
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53416888%2fhow-to-get-instance-of-a-specific-running-process-in-elixir%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
The easiest way would be to either store the PID for future use, or name the process so you can reference it by that unique name (unique within a given node. Unless you registered globally, then it is unique across the entire erlang network).
– Justin Wood
yesterday
so if I did not name my PID, then there is no way to retrieve it?
– Supui Lam
yesterday
If you know the pid integer values, you can use
pid/3
to get the instance. E.g.pid(0, 123, 4)
– Sheharyar
yesterday