Record execution
For performance reason, the recording mechanism has a few parameters. For now there is no way to change them easily with the graphical debugger, however you can change those parameters by editing (and recompiling) {RT_DBG_EXECUTION_PARAMETERS}.make
.
-
{RT_DBG_EXECUTION_PARAMETERS}.maximum_record_count
- Type:
INTEGER
- Default value: 1_000_000
- Effect: The recording keeps only the last
maximum_record_count
object's records.
- Type:
-
{RT_DBG_EXECUTION_PARAMETERS}.flatten_when_closing
- Type:
BOOLEAN
- Default value:
True
- Effect: When leaving a feature, the recorder flattens the associated record. This saves memory space, and optimizes the underlying mechanism. The default value of
True
is recommended.
- Type:
-
{RT_DBG_EXECUTION_PARAMETERS}.keep_calls_records
- Type:
BOOLEAN
- Default value:
True
- Effect: When flattening call records' values, keep the sub-call records (i.e: the execution calls history)
- Type:
-
{RT_DBG_EXECUTION_PARAMETERS}.recording_values
- Type:
BOOLEAN
- Default value:
True
- Effect: During execution, record attribute and locals assignment. Set to
False
if you just want to review the calls history. Values will not be recorded, but recording will be faster.
- Type:
The recording functionality is graphically available on the Call stack tool, or though the "Execution" menu (formerly the "Debug" menu).
After you start debugging, if at some point you decide to start recording, click on the "record" button in the Call stack tool:
or follow the menu path: Execution --> Activate Execution Recording
The execution is now recorded. Whenever the application is stopped, you can decide to replay the previously recorded execution. See: Replay (recorded) execution to learn how to replay an execution.