how can I break a while loop if it stuck at one function in this loop?

2 views (last 30 days)
Hi everyone! I'm running a while loop. It stucks sometimes on startSimulation function inside this while loop. It's not a error, but it runs for forever! I just want to break the while loop if this takes too long time like more then 1 minute.
while 1
Charge = startSimulation(t0,tf,initialState,I1C,param);
if SOC>80
break
end
end

Answers (1)

Walter Roberson
Walter Roberson on 14 Nov 2017
If you need to be able to limit the amount of time taken by an operation, then you need the Parallel Computing toolbox. You need to run the operation using parfeval(). You can then use wait() with a timeout; if the timeout expires then you can cancel() the future

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!