How can I get the PID of the current MATLAB session?

16 visualizaciones (últimos 30 días)
I want to find out the PID (process ID) of the current MATLAB session programmatically on Windows and Unix machines.

Respuesta aceptada

MathWorks Support Team
MathWorks Support Team el 23 de Feb. de 2024
Editada: MathWorks Support Team el 23 de Feb. de 2024
In newer versions of MATLAB, you can obtain the PID of a MATLAB process with the MATLAB command:
>> feature('getpid')
Please note that the use of the "feature" function is undocumented, meaning that it can be removed or changed at any time.
Another option would be to use the basic system commands. To get started, here are the commands to get all processes with "matlab" in their name:
% For Windows
>> [~,procs] = system('tasklist | findstr -i "MATLAB.exe"')
% For Unix
>> [~,procs] = system("ps aux | grep matlab | grep your_username")
.
NOTE: If the goal is to manage multiple MATLAB sessions for computation, we recommend using the "batch" function in the Parallel Computing Toolbox. This enables the user to run scripts and functions in the background, and it automatically returns a "parallel.Job" object that enables access to the state of the running script and the methods to control the running script.
  1 comentario
Oliver Woodford
Oliver Woodford el 23 de Dic. de 2015
I believe this will only work if there is only one instance of MATLAB running. It isn't useful if you are running multiple instances, and want the process ID of the particular instance, because it cannot distinguish between them.

Iniciar sesión para comentar.

Más respuestas (1)

Darin McCoy
Darin McCoy el 21 de Feb. de 2014
Butttt...later versions of matlab allow you to do it with this command
feature('getpid')

Categorías

Más información sobre Licensing on Cloud Platforms en Help Center y File Exchange.

Productos


Versión

R2007b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by