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

16 次查看(过去 30 天)
I want to find out the PID (process ID) of the current MATLAB session programmatically on Windows and Unix machines.

采纳的回答

MathWorks Support Team
编辑:MathWorks Support Team 2024-2-23
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 个评论
Oliver Woodford
Oliver Woodford 2015-12-23
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.

请先登录,再进行评论。

更多回答(1 个)

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

类别

Help CenterFile Exchange 中查找有关 Licensing on Cloud Platforms 的更多信息

产品


版本

R2007b

Community Treasure Hunt

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

Start Hunting!

Translated by