Difference between revisions of "ProfilingResult class"
CGHelpdesk (talk | contribs) |
|||
(2 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
{{CGscriptClass_Template | {{CGscriptClass_Template | ||
− | |Name=ProfilingResult | + | |Name=<nowiki>ProfilingResult</nowiki> |
− | |Description=Class to view the current result of the profiling done. | + | |Description=<nowiki>Class to view the current result of the profiling done.</nowiki> |
− | |Constructors= | + | |InheritsFrom=object|Constructors= |
− | {{CGscriptConstructors_Template|Description=Get result of current script}} | + | {{CGscriptConstructors_Template|Description=<nowiki>Get result of current script</nowiki>}} |
|Methods= | |Methods= | ||
− | {{CGscriptMethods_Template|ReturnType=Empty|Name=Reset|Description=Remove all profiling results.}} | + | {{CGscriptMethods_Template|ReturnType=Empty|Name=<nowiki>Reset</nowiki>|Description=<nowiki>Remove all profiling results.</nowiki>}} |
− | {{CGscriptMethods_Template|ReturnType=string|Name=ToString|Description=The string representation of the object.}} | + | {{CGscriptMethods_Template|ReturnType=string|Name=<nowiki>ToString</nowiki>|Inherited=object|Description=<nowiki>The string representation of the object.</nowiki>}} |
|Properties= | |Properties= | ||
− | {{CGscriptProperties_Template|ReturnType= | + | {{CGscriptProperties_Template|ReturnType=number|Name=<nowiki>CompileTime</nowiki>|HasGetter=1|Description=<nowiki>Number of milliseconds spent on parsing script. Always recorded even if profiling has not been enabled.</nowiki>}} |
− | {{CGscriptProperties_Template|ReturnType=Dictionary|Name=CountResult|HasGetter=1|Description=Dictionary of line number and dictionary of line position and number of times executed. Lines not executed are not reported}} | + | {{CGscriptProperties_Template|ReturnType=Dictionary|Name=<nowiki>CountResult</nowiki>|HasGetter=1|Description=<nowiki>Dictionary of line number and dictionary of line position and number of times executed. Lines not executed are not reported</nowiki>}} |
− | {{CGscriptProperties_Template|ReturnType= | + | {{CGscriptProperties_Template|ReturnType=number|Name=<nowiki>DependencyGraphTime</nowiki>|HasGetter=1|Description=<nowiki>Number of milliseconds spent on calculating where expressions in bulk. Always recorded even if profiling has not been enabled.</nowiki>}} |
− | {{CGscriptProperties_Template|ReturnType=bool|Name=EnableProfiling|HasGetter=1|HasSetter=1|Description=When set to true the duration and number of times a statement is executed is recorded.}} | + | {{CGscriptProperties_Template|ReturnType=bool|Name=<nowiki>EnableProfiling</nowiki>|HasGetter=1|HasSetter=1|Description=<nowiki>When set to true the duration and number of times a statement is executed is recorded.</nowiki>}} |
− | {{CGscriptProperties_Template|ReturnType=string|Name=ObjectTypeName|HasGetter=1|Description=The name of the type of object.}} | + | {{CGscriptProperties_Template|ReturnType=string|Name=<nowiki>ObjectTypeName</nowiki>|HasGetter=1|Description=<nowiki>The name of the type of object.</nowiki>}} |
− | {{CGscriptProperties_Template|ReturnType= | + | {{CGscriptProperties_Template|ReturnType=Array of strings|Name=<nowiki>Script</nowiki>|HasGetter=1|Description=<nowiki>Array of lines in input script.</nowiki>}} |
− | {{CGscriptProperties_Template|ReturnType=Dictionary|Name=TimeResult|HasGetter=1|Description=Dictionary of line number and dictionary of line position (-1 == whole line) and time spent in milliseconds. Lines not executed are not reported}} | + | {{CGscriptProperties_Template|ReturnType=Dictionary|Name=<nowiki>SlowLines</nowiki>|HasGetter=1|Description=<nowiki>Dictionary of line number and time it took. Does not report lines that took less than 100msec</nowiki>}} |
− | {{CGscriptProperties_Template|ReturnType=TypeInformation|Name=TypeInformation|HasGetter=1|Description=Get information about this class.}} | + | {{CGscriptProperties_Template|ReturnType=Dictionary|Name=<nowiki>TimeResult</nowiki>|HasGetter=1|Description=<nowiki>Dictionary of line number and dictionary of line position (-1 == whole line) and time spent in milliseconds. Lines not executed are not reported</nowiki>}} |
− | {{CGscriptProperties_Template|ReturnType= | + | {{CGscriptProperties_Template|ReturnType=TypeInformation|Name=<nowiki>TypeInformation</nowiki>|HasGetter=1|Inherited=object|Description=<nowiki>Get information about this class.</nowiki>}} |
+ | {{CGscriptProperties_Template|ReturnType=number|Name=<nowiki>WhereExpTime</nowiki>|HasGetter=1|Description=<nowiki>Number of milliseconds spent on calculating where expressions in bulk. Always recorded even if profiling has not been enabled.</nowiki>}} | ||
}} | }} | ||
− | |||
=== Examples === | === Examples === | ||
Line 29: | Line 29: | ||
print(pr.CompileTime); // 0.1198 | print(pr.CompileTime); // 0.1198 | ||
print(pr.CountResult); // {"4": {"0": 1, "4": 1}, "5": {"0": 100}, "7": {"4": 1}} | print(pr.CountResult); // {"4": {"0": 1, "4": 1}, "5": {"0": 100}, "7": {"4": 1}} | ||
− | print(pr. | + | print(pr.DependencyGraphTime); // 0 |
print(pr.TimeResult); // {"4": {"0": 0.0827, "-1": 0.0844, "4": 0.0017}, "5": {"0": 0.0102, "-1": 0.0102}, "7": {"-1": 0.006, "4": 0.006}, "8": {"-1": 0.0209, "4": 0.0209}, "9": {"-1": 0.0022, "4": 0.0022}} | print(pr.TimeResult); // {"4": {"0": 0.0827, "-1": 0.0844, "4": 0.0017}, "5": {"0": 0.0102, "-1": 0.0102}, "7": {"-1": 0.006, "4": 0.006}, "8": {"-1": 0.0209, "4": 0.0209}, "9": {"-1": 0.0022, "4": 0.0022}} | ||
print(pr.WhereExpTime); // 0 | print(pr.WhereExpTime); // 0 | ||
</source> | </source> |
Latest revision as of 06:24, 2 July 2020
ProfilingResult
Class to view the current result of the profiling done.
Parent class
Inherits from object
Constructors
- () - Get result of current script
Methods
- Empty Reset() - Remove all profiling results.
- (From object) string ToString() - The string representation of the object.
Properties
- number CompileTime { get; } - Number of milliseconds spent on parsing script. Always recorded even if profiling has not been enabled.
- Dictionary CountResult { get; } - Dictionary of line number and dictionary of line position and number of times executed. Lines not executed are not reported
- number DependencyGraphTime { get; } - Number of milliseconds spent on calculating where expressions in bulk. Always recorded even if profiling has not been enabled.
- bool EnableProfiling { get; set; } - When set to true the duration and number of times a statement is executed is recorded.
- string ObjectTypeName { get; } - The name of the type of object.
- Array of string Script { get; } - Array of lines in input script.
- Dictionary SlowLines { get; } - Dictionary of line number and time it took. Does not report lines that took less than 100msec
- Dictionary TimeResult { get; } - Dictionary of line number and dictionary of line position (-1 == whole line) and time spent in milliseconds. Lines not executed are not reported
- (From object) TypeInformation TypeInformation { get; } - Get information about this class.
- number WhereExpTime { get; } - Number of milliseconds spent on calculating where expressions in bulk. Always recorded even if profiling has not been enabled.
Examples
ProfilingResult pr;
pr.EnableProfiling = true;
for(number i = 0; i < 100; i=i+1)
;
print(pr.CompileTime); // 0.1198
print(pr.CountResult); // {"4": {"0": 1, "4": 1}, "5": {"0": 100}, "7": {"4": 1}}
print(pr.DependencyGraphTime); // 0
print(pr.TimeResult); // {"4": {"0": 0.0827, "-1": 0.0844, "4": 0.0017}, "5": {"0": 0.0102, "-1": 0.0102}, "7": {"-1": 0.006, "4": 0.006}, "8": {"-1": 0.0209, "4": 0.0209}, "9": {"-1": 0.0022, "4": 0.0022}}
print(pr.WhereExpTime); // 0