View Issue Details

IDProjectCategoryView StatusLast Update
0030443RunnerBuffersPublic2019-05-08 16:00
ReporterStewart BishopAssigned ToCoreTech 
PriorityMediumSeverityC - GeneralReproducibility100%
Status ClosedResolutionNo Change Required 
Product Version2.2.2 
Target Version2.2.3Fixed in Version2.2.3 
Summary0030443: Buffers: buffer_delete() doesn't seem to free up all of the memory allocated
DescriptionWithin the users sample project they create 240,000 buffers and then delete them. If you look at the debugger whilst this is happening, the game starts at about 4mb of memory and it rises to 40mb when all of the buffers have been created, but then only drops to between 36-32mb after buffer_delete() has been called on all of the buffers.

Expected: once you've created and deleted all the buffers, after a short delay, the memory would drop back to before all of the memory was allocated.
Steps To Reproduce1) Run the sample with the debugger
2) Watch as the buffers are created and deleted
3) See the memory doesn't drop below 32mb even though it starts at 4mb
1.4 Found In
2.x Runtime Found In2.2.2.296
2.x Runtime Verified In9.9.1.1431


Stewart Bishop

2019-01-23 14:46


Buffer Create Example.yyz (13,609 bytes)


2019-04-10 14:22

Developer   ~0063606

There is no leak in buffer_create\delete

When you create 240,000 buffers a number of allocations are made within our bucket allocator system. This memory is freed to be re-usable once the buffers are destroyed but is not returned to the system heap. (To confirm this is the case if you make the alarm repeat and call the Create/Destroy Buffers code repeatedly you will not see any increase in the memory used)