gpt4 book ai didi

delphi - 我可以使用 TVirtualMethodInterceptor 实现实例计数监控吗?

转载 作者:行者123 更新时间:2023-12-03 15:13:02 26 4
gpt4 key购买 nike

Virtual method interception - 由 Delphi XE 引入 - 可用于“代理”方法,以便可以在原始方法之前和之后执行自定义代码。

这也可以用于通过代理虚拟方法 TObject.AfterConstruction 和 TObject.BeforeDestruction 来保存 Delphi 应用程序中所有对象实例的计数吗?

如果是,这可能是在运行时分析 FastMM4 内存分配统计数据的简单方法(使用对象的 InstanceSize 属性并将其与分配的内存块进行匹配)。

<小时/>

更新:很抱歉问了一个从 DocWiki 信息中很容易回答的问题 - 我先阅读了链接的文章,只浏览了示例代码

最佳答案

不,那是行不通的。来自 documentation ,我强调的是:

Permits the user to dynamically intercept virtual method calls on specified instances of a particular class type.

问题是您需要先掌握每个实例,然后才能进行代理。但您希望通过代理来获取实例。所以你现在陷入了先有鸡还是先有蛋的局面。

关于delphi - 我可以使用 TVirtualMethodInterceptor 实现实例计数监控吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9791851/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com