From the reference libraryRedM

autodoc_shared_functions

jo_libs/modules/debugger/autodoc/autodoc_shared_functions.md

autodoc_shared_functions

JO Functions > jo.debugger.perfomance()

Measures the performance of a callback function execution. <br>

JO Functions > jo.debugger.perfomance() > Syntax

jo.debugger.perfomance(title, cb)

JO Functions > jo.debugger.perfomance() > Parameters

title : string <BadgeOptional />

Title for the performance measurement - default:""

cb : function

The callback function to measure

JO Functions > jo.debugger.perfomance() > Return Value

Type : number

Duration in microseconds

JO Functions > jo.debugger.perfomance() > Example

local duration = jo.debugger.perfomance("Array iteration", function()
    local array = {}
    for i = 1, 10000 do
        array[i] = i
    end

    local sum = 0
    for i = 1, #array do
        sum = sum + array[i]
    end
end)

print("The operation took " .. duration .. " microseconds")


JO Functions > jo.debugger.perfomanceRepeat()

Measures the average performance of multiple executions of a callback function. <br>

JO Functions > jo.debugger.perfomanceRepeat() > Syntax

jo.debugger.perfomanceRepeat(title, numberRepeat, cb, waitBetweenRepeat)

JO Functions > jo.debugger.perfomanceRepeat() > Parameters

title : string <BadgeOptional />

Title for the performance measurement - default:""

numberRepeat : integer <BadgeOptional />

Number of times to repeat the measurement - default:1

cb : function

The callback function to measure

waitBetweenRepeat : integer <BadgeOptional />

Time to wait between repetitions in ms - default:nil

JO Functions > jo.debugger.perfomanceRepeat() > Return Value

Type : number

Average duration in microseconds

JO Functions > jo.debugger.perfomanceRepeat() > Example

local averageDuration = jo.debugger.perfomanceRepeat("Table lookup", 100, function()
    local testTable = {}
    for i = 1, 1000 do
        testTable[i] = "value_" .. i
    end

    -- Operation to measure
    for i = 1, 1000 do
        local value = testTable[i]
    end
end, 10)

print("Average execution time: " .. averageDuration .. " microseconds")

Back to documentation