Run and Debug

Back to -Products -Sapphire-IDE -FAQ -Run and Debug

Debugging with stepping is slow when viewing the Autos window

When I am tracing through an application and watching variables in the Autos window, the stepping seems to be very slow.

While the ‘Cylon’ debugger is optimized for fast execution, the speed of stepping through code declines according to the amount of debugging information evaluated at each step. This may be particularly noticeable if you use the Autos window to display the full range of debugging information provided by a framework such as Rails. This is because Rails (and other frameworks) may, at certain times, have huge numbers of instance variables, global variables, singleton methods and other types of data ‘in scope’. If the Autos window is in use, each variable has to be evaluated and parsed into its component parts to provide ‘drill-down’ debugging in the Autos window. When huge amounts of data have to be evaluated at each debugging step this may impose a notable overhead on the speed of debugging.

As a general rule, when we recommend that you the Watch window in preference to the Autos window. The Watch window lets you monitor only those variables of particular interest rather than all possible debugging data. Alternatively, you may use the Local window to watch local variables. Only use the Autos window when you are sure that you need to monitor the full range of debugging information.

Note too that you may avoid unnecessary evaluation in the Autos window by disabling those elements which are of no interest to you. To do this, selectively disable Autos window options for the current project using the Project Properties (select Project, Properties and set to False the Autos options in the Debugger section). To disable Autos options by default for all projects created in future, set the options in Tools, Options, Projects and Solutions, Ruby In Steel.

Bookmark and Share   Keywords:  cylon  Ruby In Steel 1
© SapphireSteel Software 2014