Thread implemented in MATLAB in a timer

6 vues (au cours des 30 derniers jours)
Claire
Claire le 4 Déc 2024
Commenté : Jakob le 7 Mai 2025
Hello,
I have two processes (one for a camera that runs through a camera function and one for a robot that runs through a robot function), and I'd like to set up a thread to run them in parallel.
I'd like the robot process to run in the background if possible. I searched the internet and found parfeval but I don't really understand how it works.
I don't really understand how it works. Can you advise me on how to do this?

Réponse acceptée

Abhaya
Abhaya le 5 Déc 2024
Hi Claire,
I understand that you want to run two processes in parallel: one for a camera function and another for a robot function, with the robot process running asynchronously in the background.
To achieve this, you can use MATLAB ‘parfeval’ function along with ‘parpool’ function. The MATLAB ‘parpool’ function starts a parallel pool of workers, while the MATLAB ‘parfeval’ function is used to run functions in the background.
To set this up, please refer to the steps given below.
  • Start the parallel pool with two workers.
parpool(2);
  • Run the camera and robot processes in the background.
f1 = parfeval(@cameraProcess, 0); % The second parameter represents number of output. ‘0’ means there is no output.
f2 = parfeval(@robotProcess, 0);
For more information, please refer to the MATLAB documentation for ‘parpool’ and ‘parfeval’ functions.
Additionally, you might find this MATLAB community discussion helpful.
Hope this helps in solving your query.
  3 commentaires
Claire
Claire le 5 Déc 2024
Found how to do it and it works. Thanks for your help
Jakob
Jakob le 7 Mai 2025
would you mind sharing your solution?

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Parallel Computing Fundamentals dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by