`
neo
  • 浏览: 265748 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

FastMM FastCode

阅读更多

Delphi 2006 中一个重要的更新就是使用开源内存管理器 FastMM 替调了使用了 N 年的老内存管理器。

FastMM 在外国 Delphi 社区非常有名,其主要目的就是重新实现一个高效、安全、稳定的内存管理器(Borland 的内存管理器问题多多,如 Dll 和 Exe 间无法共享,多线程下效率底--一些情况下甚至于低一个数量级!),在代号为 Dexter 的 Delphi 2006 没 release 之前已经听李维大肆鼓吹说 Dexter 如何出色,还在 CSDN 上说他 Demo 证明 FastMM 在 Delphi 和 BCB 下能提高 NNN% 的效率!

FastMM 的主页:

http://fastmm.sourceforge.net

相对旧内存管理器,FastMM 有诸多的优点:

1、彻底实现了 Borland 的内存管理器,可以完全取代现有的内存管理器(“取代”就是第一个 uses FastMM4,that is all ...)
 
2、实现了内存管理器共享机制,Exe 和 Dll 间共享内存管理器不需要任何 Dll 支持
 
3、集成了内存泄漏检测功能
 
4、充分兼容现有的代码、Delphi 旧内存管理器模式
 
5、为了加速 Delphi IDE(如 Delphi 5/6/7、Delphi 2005)的启动速度、管理内存占用等,他提供了 BorlndMM.dll 的替代(在FastMM478\Replacement BorlndMM DLL\Precompiled\for Delphi IDE\Performance\下面),直接替换 Delphi/Bin 中的 Dll 即可!

如果想在 Delphi 7 下使用,最最简单的方法当然是在 dpr 中第一个 uses FastMM4

打开FastMM4的调试功能,首先在自己的project里把FastMM4放在最前面,例如:

  FastMM4,
  Main in ‘Main.pas’ {MainForm},
再修改FastMM4Options.inc,打开全调试模式。例:

{$define FullDebugMode}

也可以在project中定义编译常量:FullDebugMode。同时把FastMM_FullDebugMode.dll拷贝到编译后生成的可执行程序所­在目录。

再要打开内存泄漏报告:EnableMemoryLeakReporting。一般情况下是缺省打开的。

这样就打开了全调试模式,如果发生内存泄漏将会生成报告文件,如果在IDE运行的时候还会弹出一个对话框显示。报告文件类似:kicoy_MemoryMana­ger_EventLog.txt

最佳实践: 在FastMM4Options.inc文件中,把默认的{$define EnableMemoryLeakReporting},改成{.$define EnableMemoryLeakReporting},去掉默认的内存泄露报告功能;把默认的{.$define FullDebugMode},改成{$define FullDebugMode}打开全调试功能。这样,以后在项目中,project->options->conditional defines中,如果加入{$define EnableMemoryLeakReporting},则打开内存泄露报告功能(而且是FullDebugMode,屏幕提示+记录到文件);去掉{$define EnableMemoryLeakReporting},则关闭内存泄露的报告功能。注意,改变编译条件之后,要重新Build一下工程,才会生效.

请注意,打开的FastMM4的这些调试功能,只有在IDE环境下才会生效,在应用程序单独运行的情况下,是感觉不到FastMM4的存在的,不会提示内存泄露,也不会记录文件。

The Fastcode project provides highly optimized functions for the Delphi community. Functions are faster versions of Delphi runtime library functions, VCL functions or functions meant as extensions for these. The project is running on a volunteer basis.

 

 

FastCode 是通过直接 Patch 掉 Delphi 的函数实现的,如你使用 Delphi RTL 中的 Pos 函数,引用 FastCode 相应的单元后在单元的初始节他会根据不同的 CPU 类型把 Delhpi 的函数替换成最优的函数进行调用

  To use it must include the "Fastcode" unit in the first order
  of your uses clauses of your delphi project. If you're using
  and alternative memory manager and/or FastMove the order should
  be like:

  FastMM4,
  FastCode,
  FastMove,
  ... etc ...

 

分享到:
评论

相关推荐

    FastMM、FastCode、FastMove打包

    FastMM、FastCode和FastMove都是针对Delphi和Free Pascal编程语言的优化工具,旨在提高应用程序的运行速度和内存管理效率。以下是对这些工具的详细说明: 1. **FastMM** FastMM是一个开源的内存管理器,为Delphi和...

    delphi FastMM

    Delphi FastMM是一个高效、强大的内存管理工具,主要用于Delphi编程环境。FastMM是由Steve Trefethen开发的,它取代了Delphi默认的内存管理器,提供了更高级别的内存泄漏检测和性能优化功能。在Delphi开发中,正确...

    Fastmm4,Fast Memory Manager 4.991 最稳定版源码

    Fastmm4,Fast Memory Manager 4.991 最稳定版源码

    delphi内存泄漏检测工具FastMM4991.zip

    "FastMM、FastCode、FastMove的使用.docx" 可能进一步扩展了FastMM4的功能,提到了FastCode和FastMove这两个相关的优化库。FastCode是一个优化的代码生成库,可以提高Delphi程序的执行效率。而FastMove则是一个高效...

    delphi、c++builder加速控件 fastmm490

    FastMM4是一个强大的内存管理工具,专为Delphi和C++Builder开发人员设计,用于提升应用程序的性能和稳定性。在标题中提到的"FastMM490"可能指的是FastMM4的一个特定版本或更新,强调了它在加速控件方面的优秀表现。...

    内存泄露工具FastMM

    如果使用Delphi7,遇到了内存泄露,结合MAP文件FASTMM的报告就可以很好的定位问题,附件包含FastMM4,FastMM4Messages两个pas文件,还有一个配置文件,和一个动态库FullMode_Debug_Mode.dll.默认配置直接可以使用。

    FastMM5.zip

    《FastMM5在Delphi 10.4.1中的应用与详解》 FastMM5是一款为Delphi编程环境设计的高效、强大的内存管理模块。它由社区开发并广泛应用于Delphi项目,以提高程序的稳定性和性能。在Delphi 10.4.1版本中,FastMM5作为...

    FastMM最新版本Delphi下最好的内存泄漏检测控件加速控件

    FastMM是针对Delphi开发环境的一个高效、强大的内存管理及内存泄漏检测工具,它被誉为Delphi下最佳的内存管理库之一。FastMM以其卓越的性能和详细的内存泄漏报告而受到广大开发者的好评。在本文中,我们将深入探讨...

    FastMM497.zip

    《深入解析FastMM4:Delphi内存管理的强大工具》 FastMM4是一个开源的内存管理器,专为Delphi编程语言设计。它替代了Delphi自带的内存管理系统,提供了更高级的功能和更优化的性能。在Delphi社区中,FastMM4因其...

    内存管理FastMM_4.78

    FastMM_4.78是针对Delphi开发的一个高级内存管理器,它旨在替代标准的BorlndMM内存管理系统,提供更优化的内存分配和释放策略。 FastMM4Options.inc是一个配置文件,它允许开发者根据项目的具体需求自定义FastMM的...

    FastMM5-master Delphi内存泄漏调试法宝.zip

    FastMM5-master|BorlndMM DLL||BorlndMM.dpr||BorlndMM.dproj 5.12KB|FullDebugMode DLL||Precompiled|||FastMM_FullDebugMode.dll 1.37MB|||FastMM_FullDebugMode64.dll 2.11MB||FastMM_FullDebugMode.dpr 23.81KB|...

    FastMM4991.zip

    《深入理解FastMM4:Delphi中的内存管理与泄漏检测》 FastMM4是一个开源的内存管理库,专为Delphi编程语言设计,用于替换默认的内存管理器,以提供更高级别的内存泄漏检测和调试功能。在Delphi开发过程中,内存管理...

    FastMM4.92 + 使用指南

    **FastMM4.92 使用指南** FastMM4是一个高效、免费、开源的内存管理库,主要用于替代Delphi和Free Pascal等编译器内置的内存管理机制。它提供了更高级别的内存错误检测和性能优化,使得开发者在创建应用程序时能够...

    FastMM4991.RAR

    《FastMM4内存管理库深度解析与应用》 FastMM4是一个开源的内存管理库,专为Delphi和Free Pascal编程语言设计,用于替代默认的内存管理器,以提供更高级别的内存泄漏检测和性能优化功能。这个强大的工具在开发过程...

    FastMM492 Full Source

    《FastMM492全源码解析》 FastMM4是一个高效、强大的内存管理库,专为Free Pascal和Delphi编程语言设计。它在开源社区中广受赞誉,以其出色的性能和丰富的特性著称。FastMM492是FastMM4的一个特定版本,可能包含了...

    FastMM 4.64

    FastMM 4.64 是一个专门为 Delphi 开发者设计的高效内存管理库,它在 Windows 和 Linux 平台上都能运行。这个版本是 FastMM 的一个重要更新,它专注于内存泄漏检测,帮助开发者识别和修复可能导致程序性能下降或不...

    delphi 内存管理 FastMM497

    标题中的"FastMM497"可能指的是FastMM的一个特定版本或修订号,这通常意味着开发者或社区对原始FastMM进行了更新和改进,以修复已知问题或添加新功能。FastMM4以其出色的错误检测和报告机制而受到赞誉,它能够帮助...

    FastMM For XE

    《FastMM for XE:深度解析与应用指南》 FastMM 是一款强大的内存管理模块,专为 Delphi 和 C++Builder 开发者设计,用于替代系统默认的内存管理器,提供更高效、更精确的内存分配和释放机制。在本文中,我们将深入...

    Fastmm456

    《FastMM456:一款高效且强大的内存管理库》 FastMM456是一款广泛应用于Delphi和C++Builder开发环境的开源内存管理库,它以其高效、稳定和高度可配置性而闻名。该库的最新版本为4.56,提供了显著的性能提升和错误...

    FastMM4.99

    《深入理解Delphi内存管理:探索FastMM4.99》 在软件开发过程中,内存管理是一项至关重要的任务,它关系到程序的性能、稳定性和安全性。Delphi,作为一个强大的对象 Pascal 编程语言,其内存管理机制对于开发者来说...

Global site tag (gtag.js) - Google Analytics