How do I free up terminal for a script to keep running, i.e. run a script in two places at once?

1 view (last 30 days)
Real Name
Real Name on 27 Jun 2018
Edited: Real Name on 28 Jun 2018
I have a camera connected to my computer which, for it to take a video, runs a function that is along the lines of:
function video(camera)
while X
camera.takePicture();
drawnow;
end
end
My main driver script is along the lines of:
camera.video;
%do stuff that changes the images and what the camera sees
I want the camera to be running while the rest of the script is running so I can see what is going on.
Anyone have an easy way of doing this? I don't want to overkill.

Accepted Answer

Matt Macaulay
Matt Macaulay on 28 Jun 2018
I don't think it's possible to have the script run at two places at once. However a quick workaround would be to move the while loop to the main driver script:
while X
camera.video;
%do stuff that changes the images and what the camera sees
end
and so the video function is now only
function video(camera)
camera.takePicture();
drawnow;
end
  1 Comment
Real Name
Real Name on 28 Jun 2018
Thanks for the answer. Although I don't feel too comfortable changing the video camera function, I'm mainly concerned about if this loop will be able to run fast enough such that I can see updates happening in real time. The computer I'm working off of is pretty slow.
Do you know of another parallel processing way of doing this?

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!