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

35 views (last 30 days)
I want to find out the PID (process ID) of the current MATLAB session programmatically on Windows and Unix machines.

Accepted Answer

MathWorks Support Team
MathWorks Support Team on 23 Feb 2024
Edited: MathWorks Support Team on 23 Feb 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 Comment
Oliver Woodford
Oliver Woodford on 23 Dec 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.

Sign in to comment.

More Answers (1)

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

Categories

Find more on Get Started with MATLAB in Help Center and File Exchange

Products


Release

R2007b

Community Treasure Hunt

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

Start Hunting!