is there any difference between debug mode and release mode in MATLAB?

I'm using Robotic System Toolbox, using callback function to read data from a robot.
There is a problem, when I run the code in debug mode, or, in the command line, it works correctly. However, when I run the code in release mode(which means, put the code in a function file, and then run that function file), matlab can't read any data from robot...
I wonder, if there any optimization in release mode that makes its result different from debug mode's. By the way, in release mode, if I use par for (parpool) and drawnow inside that function file, the code works correctly... If I just use par for, or just use drawnow, the code works wrong...

5 comentarios

Anyone could help me? Thanks in advance!~
drawnow should not have much effect inside a parfor, as parfor workers cannot interact with the graphics system. However, it is possible that you are using a tight loop and as well have a device that needs callbacks (such as a serial device) and the device is having trouble getting the callback to execute in the tight loop. A tight loop and a timer should be okay in any release in about the last 5 years as timers are permitted to interrupt even without a pause() or drawnow()
Thank you for your help!~ But I think I have to add some info about my question for you...
>> help drawnow
drawnow Update figure windows and process callbacks
In fact, if I don't use drawnow inside par for loop, the callback will be hang on and thus I couldn't be able to read any new data.
The problem may have nothing to do with tight loop... Because I haven't used a loop inside my code at first. Adding the par for loop is just to test another circumstance...
Walter Roberson
Walter Roberson el 7 de Jul. de 2016
Editada: Walter Roberson el 7 de Jul. de 2016
What kind of callback is being processed, and where is the callback being defined (inside the parfor loop or outside the parfor loop) ?
The callback is about Robotics System Toolbox. Matlab client use this callback to receive serial message from Robotic Operation System.

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Preguntada:

el 7 de Jul. de 2016

Comentada:

el 8 de Mzo. de 2017

Community Treasure Hunt

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

Start Hunting!

Translated by