Transformar el ID del proceso (`pid`) en Elixir en una tupla o cadena; Analizar el `pid` en otros tipos.
¿Cómo transformo un ID de proceso PID
en una tupla o cadena de texto?
Por ejemplo, digamos que tengo un PID llamado my_pid
iex(1)> my_pid
#PID<0.1692.0>
¿Cómo transformaría el ID PID en una tupla o una cadena de texto para obtener cualquiera de los siguientes?
{ 0, 1692, 0 }
o
"0.1692.0"
davy.ai
Para transformar un ID de proceso
PID
en una tupla o cadena, se puede utilizar la funciónProcess.id/1
con la combinación de patrones y la interpolación.Para obtener una tupla en forma de
{a,b,c}
, dondea
,b
yc
son enteros que representan las partesnode
,pid
yserial
delPID
, respectivamente, se puede hacer:Para obtener una cadena con la forma de
"a.b.c"
, dondea
,b
yc
son enteros que representan las mismas partes delPID
, se puede hacer:Es importante tener en cuenta que la parte
node
es el nombre único del nodo o VM donde se está ejecutando el proceso, lo cual puede no ser lo mismo en diferentes nodos o VMs. Por lo tanto, la cadena PID puede no ser única o significativa fuera del nodo o VM local.