Einzelnen Beitrag anzeigen

Benutzerbild von bigg
bigg

Registriert seit: 1. Jul 2007
155 Beiträge
 
#2

Re: FastMM 4.84 ist ab heute verfügbar!

  Alt 5. Jul 2008, 13:57
Danke für diesen Hinweis. Hier noch das Changelog:

Version 4.84 (7 July 2008):
  • Added the Romanian translation. (Thanks to Ionut Muntean.)
  • Optimized the GetMemoryMap procedure to improve speed.
  • Added the GetMemoryManagerUsageSummary function that returns a summary of the GetMemoryManagerState call. (Thanks to Hallvard Vassbotn.)
  • Added the French translation. (Thanks to Florent Ouchet.)
  • Added the "AlwaysAllocateTopDown" FullDebugMode option to help with catching bad pointer arithmetic code in an address space > 2GB. This option is enabled by default.
  • Added the "InstallOnlyIfRunningInIDE" option. Enable this option to
    only install FastMM as the memory manager when the application is run
    inside the Delphi IDE. This is useful when you want to deploy the same EXE
    that you use for testing, but only want the debugging features active on
    development machines. When this option is enabled and the application is
    not being run inside the IDE, then the default Delphi memory manager will
    be used (which, since Delphi 2006, is FastMM without FullDebugMode.) This
    option is off by default.
  • Added the "FullDebugModeInIDE" option. This is a convenient shorthand for
    enabling FullDebugMode, InstallOnlyIfRunningInIDE and
    LoadDebugDLLDynamically. This causes FastMM to be used in FullDebugMode
    when the application is being debugged on development machines, and the
    default memory manager when the same executable is deployed. This allows
    the debugging and deployment of an application without having to compile
    separate executables. This option is off by default.
  • Added a ScanMemoryPoolForCorruptions procedure that checks the entire
    memory pool for corruptions and raises an exception if one is found. It can
    be called at any time, but is only available in FullDebugMode. (Thanks to
    Marcus Mönnig.)
  • Added a global variable "FullDebugModeScanMemoryPoolBeforeEveryOperati on".
    When this variable is set to true and FullDebugMode is enabled, then the
    entire memory pool is checked for consistency before every GetMem, FreeMem
    and ReallocMem operation. An "Out of Memory" error is raised if a
    corruption is found (and this variable is set to false to prevent recursive
    errors). This obviously incurs a massive performance hit, so enable it only
    when hunting for elusive memory corruption bugs. (Thanks to Marcus Mönnig.)
  • Fixed a bug in AllocMem that caused the FPU stack to be shifted by one position.
  • Changed the default for option "EnableMMX" to false, since using MMX may
    cause unexpected behaviour in code that passes parameters on the FPU stack
    (like some "compiler magic" routines, e.g. VarFromReal).
  • Removed the "EnableSharingWithDefaultMM" option. This is now the default
    behaviour and cannot be disabled. (FastMM will always try to share memory
    managers between itself and the default memory manager when memory manager
    sharing is enabled.)
  • Introduced a new memory manager sharing mechanism based on memory mapped
    files. This solves compatibility issues with console and service
    applications. This sharing mechanism currently runs in parallel with the
    old mechanism, but the old mechanism can be disabled by undefining
    "EnableBackwardCompatibleMMSharing" in FastMM4Options.inc.
  • Fixed the recursive call error when the EnableMemoryLeakReporting option
    is disabled and an attempt is made to register a memory leak under Delphi
    2006 or later. (Thanks to Thomas Schulz.)
  • Added a global variable "SuppressMessageBoxes" to enable or disable
    messageboxes at runtime. (Thanks to Craig Peterson.)
  • Added the leak reporting code for C++ Builder, as well as various other
    C++ Builder bits written by JiYuan Xie. (Thank you!)
  • Added the new Usage Tracker written by Hanspeter Widmer. (Thank you!)
  Mit Zitat antworten Zitat