Core.enableAllocationTracking

Available since: Gideros 2023.1
Class: Core

Description

Enables objects allocation profiler.

(table) = Core.enableAllocationTracking(b)

Parameters

b: (boolean) true to start the profiler, false to stop the profiler and create the table

Return values

Returns (table) table with data

Example

-- start the profiler
Core.enableAllocationTracking(true)

-- do stuff...

-- end the profiler and create table
local t=Core.enableAllocationTracking(false)
if t then
	local counts={}
	for k,v in pairs(t) do counts[v]=(counts[v] or 0)+1 end
	local sort={}
	for k,_ in pairs(counts) do table.insert(sort,k) end
	table.sort(sort,function(a,b) return counts[a]>counts[b] end)
	for _,k in ipairs(sort) do print(counts[k],k) end
end