exit Matlab session?
    23 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
Is there a function in Matlab to exit the whole session run without exit Matlab? I mean an equivalent to "goto end" function.
4 Kommentare
Antworten (2)
  Walter Roberson
      
      
 am 20 Feb. 2016
        In any one loop, you can use "break" to terminate the loop.
In any one function, you can "return" to continue with the calling function. This may cause problems if you have not defined the return values that the calling function is expecting.
You can use error() to quit back through multiple levels until eventually the code reaches a place that is using try/catch for error control. There is no "uncatchable error".
You just might be able to use Java Robot Class to send your MATLAB session a control-C; I am not sure that will work, but it might. control-C cannot be caught, but it can also leave the program in a strange state.
You can exit out of MATLAB completely with "exit" or "quit" (which are equivalent.)
0 Kommentare
  Jan
      
      
 am 20 Feb. 2016
        
      Bearbeitet: Jan
      
      
 am 20 Feb. 2016
  
      You can enclose you code in try catch block and use the MException identifier to recognize a regular abortion:
function Main
try
   yourFunction;
catch ME
   if strcmpi(ME.identifier, 'FlowControl:regularExit')
      disp('Regular exit.')
   else
      rethrow(ME);  % Or: throwAsCaller(ME)
   end
end
end
function yourFunction
if rand > 0.5
   ME = MException('FlowControl:regularExit', ...
      '%s: Aborted due to random reason', mfilename);
   throw(ME);  % Goodbye
end
disp('Function not aborted.')
end
You see, this is not trivial or nice. But it allows a proper cleanup and error handling.
0 Kommentare
Siehe auch
Kategorien
				Mehr zu Startup and Shutdown finden Sie in Help Center und File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




