Questions tagged [fastmm]

FastMM is the default memory manager for Delphi Win32 and Win64 bit applications. Scales well in multi-threaded applications, not prone to memory fragmentation, and supports shared memory without the use of external .DLL files. For debugging, tools for tracking memory leaks and memory corruption are part of the FastMM manager.

FastMM is the default memory manager for Delphi Win32 and Win64 bit applications.

Written by Pierre le Riche and published under MPL 1.1 or GNU LGPL 2.1 license.

Scales well in multi-threaded applications, not prone to memory fragmentation, and supports shared memory without the use of external .DLL files. For debugging, tools for tracking memory leaks and memory corruption are part of the FastMM manager.

Resource

FastMM on SourceForge

135 questions
1
vote
1 answer

Does FastMM support reserving virtual memory and calling in chunks to grow an array?

I know I can reserve virtual memory using VirtualAlloc. e.g. I can claim 1GB of virtual memory and then call in the first MB of that to put my a growing array into. When the array grows beyond 1MB I call in the 2nd MB and so on. This way I don't…
Johan
  • 74,508
  • 24
  • 191
  • 319
1
vote
1 answer

Using FastMM4, how to register leaked string?

With FastMM4 one can easily register a leaked pointer, but not a leaked string. Apparently the @ operator applied to a string is not really giving us the whole string, nor is PChar(string); What can I use to nicely register a leaked string? For now…
Cosmin Prund
  • 25,498
  • 2
  • 60
  • 104
1
vote
1 answer

How to remove FastMM497 from my project file?

After spending a week of my time running using FastMM on my project file, I now have completely gone through my program and to best of my knowledge remove all but 3 error messages raised by FastMM497. Now, I want to remove FastMM from my program and…
ThN
  • 3,235
  • 3
  • 57
  • 115
1
vote
0 answers

Cannot get fastMM4 working with C++ Builder XE7 projects

I have tried to make fastMM4 work with C++ Builder XE7 applications, but I have not succeeded. Just to test fastMM4 I created a very simple vcl-application where I intentionally created a memory leakage. I then followed the instructions given in…
1
vote
1 answer

FastMM crashes on 64 bits when debug info (MAP file) is present

I am trying to compile an old program for 64 bits (Win7, Delphi XE7). However, I have a problem with FastMM. Instead of showing the leak report it crashes in FastMM_FullDebugMode64.dll The error is: --------------------------- Debugger Exception…
Gabriel
  • 20,797
  • 27
  • 159
  • 293
1
vote
1 answer

Running in the IDE fails when using FullDebugMode for FastMM

I am trying to use FullDebugMode(fastmm4) to have a detailed report of memory leaks. While I can get this work succesfully in a dummy application that creates and doesn't free a TStringList I cannot in another application. In both projects the dpr…
UnDiUdin
  • 14,924
  • 39
  • 151
  • 249
1
vote
1 answer

Delphi - FastMM event log methods names

I'm hunting some memoryleaks and I use FastMM in FullDebugMode to get event logs. This works pretty fine, but the stacktrace is...not very nice at all. A short example: This block was allocated by thread 0x25F8, and the stack trace (return…
Jan Drozen
  • 894
  • 2
  • 12
  • 28
1
vote
0 answers

How to make FastMM log file more readable

I recently started using FastMM, now I want to know if is it possible to configure FastMM log file to be a bit more readable so that it can give me direction on where exactly the the memory is being leaked, like specifying the actual unit and…
Alec
  • 569
  • 2
  • 17
  • 27
1
vote
4 answers

How to test whether a object is freed in Delphi

The two programs as shown below try to test whether a object is freed, using the techniques described here Bad reference to an object already freed . The first program as shown below runs correctly if compiled under Delphi 7, but wrongly if…
SOUser
  • 3,802
  • 5
  • 33
  • 63
1
vote
0 answers

FastMM NeverSleepOnThreadContention

The documentation in the INC file is pretty scares about this option. So, in which situation I get performance if I activate the NeverSleepOnThreadContention and UseSwitchToThread options in FastMM? Should I activate them also for classic…
Gabriel
  • 20,797
  • 27
  • 159
  • 293
1
vote
0 answers

FastMM LogAllocatedBlocksToFile in ShareMM

I have a bunch of EXEs dynamically loading another bunch of DLLs, most of them exposing COM objects. Now I'm trying to debug one of these DLLs using one of the EXEs. All projects are compiled with latest FastMM4 (4.991) with ShareMM and such, in…
ciuly
  • 532
  • 5
  • 13
1
vote
5 answers

Why "menus" unit is finalized too early?

I tested my application with FastMM and FullDebugMode turned on, since I had some shutdown problems. After solving bunch of my own problems FastMM started to complain about calling virtual method on a freed object in TPopupList. I tried to move the…
Harriv
  • 6,029
  • 6
  • 44
  • 76
1
vote
1 answer

Why does the is operator fail to return what I expect when passed an instance from a different module?

I work on Delphi project who interac with many other small libraries. I use FastMM4 and I would like work with complex classes passed on dll parameter. So for exemple I send my form to my dll. Into the dll I test the type of parameter with the…
Joc02
  • 345
  • 8
  • 18
1
vote
1 answer

C++ Builder 2010 How to switch to FASTMM

I have some projects which were done in c++ builder 2009 and they need borlandmm.dll to run. I have read that c++ Builder 2010 by default use Fastmm, but it doesn't seems to be the case in my projects. They still need borlandmm.dll So how can I…
James
  • 113
  • 1
  • 6
1
vote
3 answers

Extra "$qqrv" appearing in symbols

Delphi XE3. I'm using the JCL Error dialog and FastMM with FullDebug turned on in my application and getting "garbage" appended to the symbols in the stack traces (both JCL and FastMM): [74EA3D67] RaiseException [0041815D]…
1 2 3
8 9